const formatTime = date => { const year = date.getFullYear() const month = date.getMonth() + 1 const day = date.getDate() const hour = date.getHours() const minute = date.getMinutes() const second = date.getSeconds() return ( [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':') ) } const formatNumber = n => { n = n.toString() return n[1] ? n : '0' + n } const fsm = wx.getFileSystemManager() const FILE_BASE_NAME = 'tmp_base64src' const base64src = function (base64data) { return new Promise((resolve, reject) => { const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || [] if (!format) { reject(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() { resolve(filePath) }, fail() { reject(new Error('ERROR_BASE64SRC_WRITE')) }, }) }) } module.exports = { formatTime: formatTime, base64src, }