- wx.openDocument(Object object),模拟器运行正确,但是手机端运行错误?
wx.getFileSystemManager().rename({ oldPath:tempPath, newPath:newPath }) wx.openDocument({ filePath:newPath, showMenu:true, type:type, success(){ wx.showToast({ title: '读取成功', }) }, fail(res){ wx.showToast({ title: "打开失败", }) } }) 我先从云服务器下载了文件,如果直接用打开的api是没任何问题的。但是如果先进行了重命名,如上代码所示,则在模拟器端(PC端)一切运行正常,可以 打开下载的文档,会弹出“去读成功”的提示,但是安卓端进行打开的时候,则吐司了“打开失败”。请官方核实
2021-06-07 - 微信下载云存储的文件,保存到本地时使用wx.env.USER_DATA_PATH后不可添加常量变量
// 这段代码,我在Android手机真机调试可以下载并且打开文件,但是在pc(我的是windows系统)只能到文件下载成功那一步,微信开发者工具中如果 //没有云储存接口(wx.cloud.downloadFile)下载之后本地接口(wx.downloadFile)再下载一遍的话也只能到文件下载成功那一步。 //现在可以在微信开发者工具和Android下载并打开文件。如下我再逐步列一下我的主要问题: // 1.wx.getFileSystemManager().saveFile接口中filePath后不能直接添加上边定义的常量和变量,包括正则表达式。(主要问题1) // 2.将常变量放到data里后可以放在filePath中,但只有手机端和微信开发者工具可用,但大文件还是想在pc端下载整合。 // 3.如果不适用正则表达式或添加文件名,直接在wx.env.USER_DATA_PATH后加储存位置的字符串,三者都可用,但是文件打不开,后期操作难度大。 // 4.后期操作无后缀文件的话,手机端可以放在相册里添加后缀,PC端直接就无法下载,打开后也是一个pdf文件,无法下载也无法编辑。对用户的操作难度加大,很不方便。 // 5.总结问题4:PC端想尽一切办法都不能加后缀打开文件,为什么手机可以PC不可以呢?(主要问题2) wx.cloud.downloadFile({ fileID: fileID, // 文件 ID // 下载云存储里的文件 success(res){ console.log("文件下载成功",res) // return // 因为直接调用wx.getFileSystemManager().saveFile接口没反应,我只好又加了个下载本地缓存的文件 wx.downloadFile({ url: res.tempFilePath, success(res){ console.log(res) // return let zhanwei_id = that.data.array[0].zhanwei_id // 因为直接添加几个变量运行函数没有反应,所以我把几个变量都整合到一起存到data中 that.setData({ filePath: '/' + bianliangming(这个是变量名) + "文件名"(这个是字符串) + /\.[^\.]+$/.exec(res.tempFilePath)[0](这个是正则表达式), }) // 现在获取到的tempFilePath才可以用了,我就开始调用全局文件接口 wx.getFileSystemManager().saveFile({ tempFilePath: res.tempFilePath, // 一开始直接把变量写在wx.env.USER_DATA_PATH后,没反应,然后就把东西放在data里,这个时候手机端可以下载并打开了,但是windows还是没反应 filePath: wx.env.USER_DATA_PATH + that.data.filePath, // 下边这条语句是我一开始用的 // filePath: wx.env.USER_DATA_PATH + "/" + bianliangming(这个是变量名) + "文件名"(这个是字符串) + /\.[^\.]+$/.exec(res.tempFilePath)[0](这个是正则表达式) success(res) { console.log('save ->', res) // 上传文件结果 wx.showToast({ title: '文件已保存至:' + res.savedFilePath, icon: 'none', duration: 1500 }) // 打开该文件 wx.openDocument({ filePath: res.savedFilePath, success: function (res) { console.log('打开文档成功') } }) } }) } }) }, fail(err){ console.log("文件下载失败",err) } })
2020-12-11 - wx.getFileSystemManager().renameSync()?
编辑器没问题,真机报错,求解答 [图片][图片]
2021-04-25