时间:2019-05-03 来源:小程序工厂
ん***:
当您拿到文件的临时文件路径时,此文件已经存在于设备上。
H***:
很感谢您的回答,我明白您的意思,我应该是没有表述清楚我的问题,我重新描述一下:
如上图所示:
第一次: 我点击下载按钮后 通过saveFileI()把文件下载到本机,下载后的文件名称是上图中的第一个saveFilePath;
第二次: 我点击下载按钮(备注:同一个下载按钮,也是说下载的是同一个文件)后 通过saveFileI()把文件下载到本机,下载后的文件名称是上图中的第二个saveFilePath;
第三次: 我点击下载按钮(备注:同一个下载按钮,也是说下载的是同一个文件)后 通过saveFileI()把文件下载到本机,下载后的文件名称是上图中的第三个saveFilePath;
......
我发现下载同一文件,保存后的文件名称不一样?
那么问题来了:如果第一次已经下载了,那么第二、三次我就不下载来,我该怎么解决呢?
思路一:把文件名称通过键值对的形式保存在缓存中,再通过getSaveFileLise()获取已经下载的文件的列表,然后逐个查找就可以实现是否已经下载该文件,那么当退出微信,再登录到微信小程序,缓存中的键值对数据没有了啊,那我怎么判断啊?
思路二:下载保存文件时文件名称的命名规则是否可以自定义,这样通过文件名是否相同来判断是否已经下载。
谢谢!
M***:
1、localStorage 一般不会被系统或微信清掉;
2、“退出微信,再登录到微信小程序”这种情况不但 localStorage 被清掉了,你下载的文件一样也没了,这种情况下更用不着判断是否已下载过了。
综上,你的思路一是可行的。
H***:
好的,谢谢!我再学习实践一下。给您点赞
n***:系统记录