main.js
data: {
isChecked: [true, false, true, true, true, true, true, true, true, true, true, true, true, true, true]
}
main.wxml
<view class="{{isChecked[1] ? ‘main_view’ : ‘main_view_clicked’ }}" bindtap=‘click’ bindlongpress=‘cancelclick’ id=‘1’></view>
我想在view中用三目运算,根据isChecked数组中不同的值来使view采用不同的样式。
请问:
我这么写isChecked[1]好像没有作用?
应该在view中怎么写才能访问数组中指定下标的值呢?
我好奇的地方是:
如果我手动更改isChecked里面的初始值,测试了false或者true。发现view的class会按照对应值采用main_view’ 或者’main_view_clicked’
但是,当我在js里面动态更改isChecked[1]的值的时候,view的class不再更新了?
我接着描述一下:
原先的data里面的数组我改了一下,全部都为true。如下:
isChecked: [true, true, true, true, true, true, true, true, true, true, true, true, true, true, true]
初始的view的三目执行main_view
首先,我点击了那个view,然后在绑定的bindtap方法里面,把isChecked[1]设置为false,输出日志如下(输出整个isChecked数组):
main.js? [sm]:42 (15) [true, false, true, true, true, true, true, true, true, true, true, true, true, true, true]
此时,wxml里面的三目不应该执行main_view_clicked了吗?但是测试时候view的样式仍然没有变啊。
这个是绑定的bindlongpress长按事件,把isChecked[1]重新置为true,并输出日志。
main.js? [sm]:50 (15) [true, true, true, true, true, true, true, true, true, true, true, true, true, true, true]