在wxml中使用typeof运算符,在变量改变之后,视图没发生相应变化
我想反馈一个 Bug,代码如下,我希望在onLoad两秒之后view的class变’disable’,但是并没有如期望的那样
< view class = "{{ typeof(x)=='number' ? 'disable' : '' }}" > |
Page({ data:{ x: 'x' },
this.setData({ x:2 });
} }); |
我提这个问题的重点不是可以怎么写,而是为什么不能这样写
5 回复
主要是我是需要在多个item里面写这个的,所以直接
<view wx:key="{{index}}" wx:for="{{list}}" class="{{ typeof(x)==‘number’ ? ‘disable’ : ‘’ }}>{{item}}</view>
这样更加简洁,逻辑放在JS里处理确实也可以,但是稍微有些啰嗦
我也不指望小程序现在能解决这个问题,我想知道小程序的内部双向绑定的逻辑是怎么样的,是如何监听这个x的,是否是因为我的这种写法小程序就认为这个x变化了和view无关。什么样的情况小程序才会监听这个x?为什么这个做法不行,或者说到底什么样的写法是有效的