html52.com
我爱小程序-开发者交流社区

微信小程序wx:if页面初始加载显示相反。

本人想制作一个商品左滑动实现商品的收藏和取消收藏,使用了vant的滑动单元格组件,使用wx:if和wx:else判断商品是否收藏了,是否收藏的数据存在data里,但是在页面第一次加载的时候“加入收藏”和”移除收藏“的显示是完全相反的,意思是从后台读到商品是收藏了的,设置为true标记,但是他显示的却是“加入收藏”,实际上要显示“移除收藏”,点击第一次按钮后,按钮内容不变,但是在js里的确是移除了收藏,这是正确的,后面的点击也都是正确的显示,但是页面加载的第一次就完全是相反的。我想知道有没有人遇到这个问题,是怎么解决的?部分代码如下:

wxml的部分实现代码:

wxml的部分实现代码:js文件代码:

js文件代码:

js文件代码:本人是个新人,wx:if难道还有什么讲究么?

本人是个新人,wx:if难道还有什么讲究么?

网友回复

狗蛋:

找到问题所在了,这个是本人的问题,没有加async await,所以这个是先执行完了setData后面才执行的request,所以setData赋值是给的上一次的值,所以显示错误了,写了那么久的代码竟然忘了最基础的浏览器机制问题,看来还是得要多写,多练

陈宇明:

true等于显示,false等于不显示

Brother斌🎈:

意思是从后台读到商品是收藏了的,设置为true标记,但是他显示的却是“加入收藏”

意思是从后台读到商品是收藏了的,设置为true标记,但是他显示的却是“加入收藏”-----if条件里为true显示加入收藏很正确啊

-----if条件里为true显示加入收藏很正确啊

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付