web-view里面套cover-view,使用.wxs文件方法needsIsHave,点击此cover-view之后,仍然显示“加入我的需求”,发现视图无法更新,需要退出重进这个页面,此cover-view才会生效变成“已添加需求车”,这是为撒?反复试具体哪里出了问题,发现dateWxs.needsIsHave(addNeedsList,7,bData.id)一直未false,退出重进此页面才会变成true,再细究,发现点击之后addNeedsList的值仍然是空的,但是我点击事件addNeeds最后一步是有setData重新赋值的,并且在setData之后打印addNeedsList是有值的,页面没有同步更新视图是为撒?
再再次细究,在.wxs文件方法needsIsHave里面打印judeg,发现已经为true,但是页面的dateWxs.needsIsHave(addNeedsList,7,bData.id)仍然为false,
<cover-view class="go_car {{!dateWxs.needsIsHave(addNeedsList,7,bData.id)?'':'have'}}" data-status="{{dateWxs.needsIsHave(addNeedsList,7,bData.id)}}" bindtap="addNeeds" data-id="{{bData.id}}" data-type="7">
{{dateWxs.needsIsHave(addNeedsList,7,bData.id)?'已添加需求车':'加入我的需求'}}
</cover-view>
点击之后,发现仍然显示“加入我的需求”,退出重进页面,才会显示“已添加需求车”,
2022/09/30 再再次发现,如果把 {{dateWxs.needsIsHave(addNeedsList,7,bData.id)?'已添加需求车':'加入我的需求'}}这一行的dateWxs.needsIsHave(addNeedsList,7,bData.id)更换成isAdd,在data中定义的变量isAdd:false,之后在JS文件中537行后面重新更换写法,that.data.isAdd =that.needsIsHave(that.data.addNeedsList,7,id),然后that.setData({isAdd :that.data.isAdd}),之后发现IOS可以渲染成如图上4“已添加需求侧”,安卓仍然不行,仍然显示为“加入我的需求”。
wx;if