iOS 11 上出现数据渲染不出来的bug,主要表现为:
异步setData 的值在模板上为空(偶尔也正常,但大概率为空);
仅在iOS11 上出现,旧版iOS 和安卓和开发工具上都没出现这个问题;
代码如下,getApp().getAreaNameById 是一个Promise 方法,出来的supplier_address 有值,但模板上为空:
if (supplier_address) { getApp().getAreaNameById({ provinceId: supplier_address.province_code, cityId: supplier_address.city_code, countiesId: supplier_address.county_code }).then(area => { supplier_address.detailAddress = `${area}${supplier_address.detail_address}` that.setData({ supplier_address }) }) } |
下图图一为有问题的截图,图二为安卓:
打出来了,所以现在很困扰。
我们这两台X,系统版本都是11.2.6,微信版本都是6.6.6,有一台必现,另一台很偶然的情况下会出现。
还有一台iPhone 8,系统版本11.3 也是必现。
在 setData 前一语句打印一下 supplier_address 的值,看下是否符合预期呢?