在一个循环中,输出不同的变量怎么做?
发布于 5 年前 作者 ganghuang 6191 次浏览 来自 官方Issues
在js我定义了     
        view1: 'nodaanclass',
    view2: 'nodaanclass',
    view3: 'nodaanclass',
    view4: 'nodaanclass',

在一组数据中,有四条数据,我循环输出,在每条数据的view中,我想设置不同的class

  <block wx:for="{{data}}" wx:key="index" wx:for-item="xx">
      <view class="{{view{{index+1}}}}" bindtap="view{{index+1}}Click" id="{{abc[index]}}">{{xx}}</view>
  </block>
这个:  class="{{view{{index+1}}}}"(这个实际报错) ,我想输出的是  class={{view1}},class={{view2}}....,请教,怎么输出的?
3 回复

js:

data{
data:[{view:'class1'},{view:'class2'},{view:'class3'},{view:'class4'}],
...
}
xClick(e){
  const id = e.currentTarget.dataset.id;
  let item = this.data[id];
  console("item.view",item.view);
}
wxml:
 <block wx:for="{{data}}" wx:key="index" wx:for-item="item">
      <view class="{{item.view}}" bindtap="xClick" data-id="{{index}}">{{item.view}}</view>
  </block>

你把这放到一个数组里面 就可以通过下标来取值了

循环数组,下标,取值不就ok

回到顶部