JS
data: {
isInFront: true
}
...
flipCard: function(){
this.setData({
isInFront: !this.data.isInFront
})
}
WXSS
.container-body-box-item{
width: 200px;
height: 200px;
transform:perspective(800px) rotateY(0deg);
transition:1s;
transform-style:preserve-3d;
}
.container-body-box-item.show-back{
transform:perspective(800px) rotateY(-180deg);
}
.front, .back{
width: 100%;
height: 100%;
left:0;
top: 0;
color: #fff;
}
.front{
background: pink;
position: absolute;
transform:translateZ(1px);
}
.back{
background: yellowgreen;
transform:translateZ(-1px) rotateY(180deg);
}
WXML
<block wx:for="{{list}}" wx:key="{{index}}">
<view class="container-body-box-item {{isInFront?'':'show-back'}}" bindtap="flipCard">
<view class="front">
<view>正面正面</view>
</view>
<view class="back">
<view>背面背面</view>
</view>
</view>
</block>
循环输出container-body-box-item这个区块,单独控制翻牌效果,我遇到的问题是不知道怎么单独控制,研究了好久,小程序好像又不能拼接变量名,该如何识别点击的是哪一个区块并让他翻牌呢?
第一种方法:
第二种方法: