微信小程序有个属性hover-class='active',是指当点击列表元素时当按下鼠标左键会显示active样式,但是鼠标离开样式就会复原.可以参考以下解决方案,直接上代码:
wxml:
|
1
2
3
4
5
6
7
8
|
<view class="taga">
<view class="tag-title">标签</view>
<view class="tag-box">
<view wx:for="{{taga}}" wx:key="id" wx:for-index="i">
<view class="taga-item {{currentItem==item.id?'active-tag':''}}" data-id="{{item.id}}" bindtap="tagChoose">{{item.name}}</view>
</view>
</view>
</view>
|
js文件:
|
1
2
3
4
5
6
7
8
9
10
11
|
tagChoose:function(options){
var that = this
var id = options.currentTarget.dataset.id;
console.log(id)
//设置当前样式
that.setData({
'currentItem':id
})
}
|
核心点:class=”taga-item {{dateCurrent==item.id?'active-tag':”}}”模板文件中使用三元运算符,通过dateCurrent指定当前item的id
