我用后台djongo程序新生成一个png图片文件存在本地,然后将文件名回传给微信小程序,再用image src来显示这个文件,但是在ios真机上无法加载此图片。同样方法生成的文件,如果文件已经存在了,我image src直接写原来的文件名,就可以加载。比如下图,第一行fileName1是我新生成的文件名,第一行无法加载。第二行是上一次已经生成的文件,可以加载。这个问题困扰我很久,麻烦帮忙看看哪里有问题,谢谢
<image src="{{fileName1}}" mode="widthFix" class="size1" binderror="imageOnloadError"></image>
<image src="/image/clothes1_2_1703768131.png" mode="widthFix" class="size2"></image>
如下图,fileName1、fileName2是我新生成的png文件的文件名,打印出来
如下图,是显示图片的代码,第一行image src="{{fileName1}}" ,第二行image src="/image/clothes1_2_1703768131.png"作为对比
如下图,console log上可以看到fileName1的文件路径形式与第二个图片image src="/image/clothes1_2_1703768131.png"无差别,但是加载第一个图片看到“getLocalImgData:fail get file data fail”错误
如下图,ios显示加载了第二张图片,而没有显示第一张,请问是哪里有问题
"/image/clothes1_1_1703768131.png"这种路径代表的是你放在代码包里的图片,动态生成的应该是“http://xxx”或者"wxfile://xxx"
又试了下,现象比较明显,已经存在的image文件,即便是从后台传过来文件名,用image src="{{fileName1}}"也可以显示出来,新生成的图片文件同样访问就不行,setTimeout 5s也不行,是不是新生成的文件有什么东西短时间get不到啊。很着急,麻烦大家帮忙看看
this.setData赋值操作外面设个延时器,延迟个.2s试一下,ios有时候有延迟
你的第23行错误表示没找到这个本地文件