24 lines
		
	
	
		
			687 B
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			687 B
		
	
	
	
		
			JavaScript
		
	
	
| const fsm = wx.getFileSystemManager ? wx.getFileSystemManager() : null;
 | |
| const FILE_BASE_NAME = 'tmp_base64src'; //自定义文件名
 | |
| 
 | |
| export function base64src(base64data, cb) {
 | |
|   const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || [];
 | |
|   if (!format) {
 | |
|     return (new Error('ERROR_BASE64SRC_PARSE'));
 | |
|   }
 | |
|   const filePath = `${wx.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`;
 | |
|   const buffer = wx.base64ToArrayBuffer(bodyData);
 | |
|   fsm.writeFile({
 | |
|     filePath,
 | |
|     data: buffer,
 | |
|     encoding: 'binary',
 | |
|     success() {
 | |
|       cb(filePath);
 | |
|     },
 | |
|     fail() {
 | |
|       return (new Error('ERROR_BASE64SRC_WRITE'));
 | |
|     },
 | |
|   });
 | |
| }
 | |
| //module.exports = base64src;
 |