问题是这样的,今天我们的PM上报了一个BUG,说我的项目中进入一个考勤页面,里边有两行数据没有展示出来。
代码的内容很简单,就是使用view标签包裹了一个变量进行展示,拿到接口数据后,更新变量。
可是经过我的调试,数据其实是更新了的,只不过视图没有更新。
最终,我大概定位到了问题,应该是给view标签设置了高度,并且设置了display: -webkit-box; 属性后。动态更新view中需要展示的文本内容,视图渲染不会同步。
我的代码片段里边。
index是模仿进入考勤页面,index2模仿的考勤页面。
在index2/index.wsml中
<view class="name"> {{ '' + name + '' }} </view>
使用timeout更新name,但是视图不会更新。
我把标签换成text就可以更新了。
这个问题,我测试我们项目的代码,发现在ios 13~15的系统版本都存在问题,微信的客户端应该都是上报问题的版本。
项目已经上线有6个月了,也经过ios的测试,之前是没有这个问题的。
这个是苹果系统自身的bug ,得等待他们修复
有兼容方案,单独提一个渲染层,加个 transform: translateZ(0); 就行或者你们自己的其他实现方式也行