每次写都要重新学一遍,记录一下
html页面
<block wx:key="index" wx:for='{{time}}' data-date="{{item.time}}">
{{index}} {{item}}
<view class='select' id='{{index}}'bindtap='changeColor'>
<block wx:if="{{index==clickId}}" >//按下状态
<button class='btn' style='color:white;background-color:#febb60;font-size:25rpx;width:70rpx;height:100rpx;line-height:100rpx;' >
{{ item }}
</button>
</block>
<block wx:else>
<button class='btn' style='color:black;background-color:#eeeded;font-size:25rpx;width:70rpx;height:100rpx;line-height:100rpx;'>
{{ item }}
</button>
</block>
</view>
</block>
js部分
const app = getApp()
Page({
data: {
time: ['10', '25', '30', '60', '90'],
clickId: -1,
motto: 'Hello World',
userInfo: {},
hasUserInfo: false,
canIUse: wx.canIUse('button.open-type.getUserInfo')
},
//事件处理函数
bindViewTap: function() {
wx.navigateTo({
url: '../logs/logs'
})
},
onLoad: function () {
if (app.globalData.userInfo) {
this.setData({
userInfo: app.globalData.userInfo,
hasUserInfo: true
})
} else if (this.data.canIUse){
// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
// 所以此处加入 callback 以防止这种情况
app.userInfoReadyCallback = res => {
this.setData({
userInfo: res.userInfo,
hasUserInfo: true
})
}
} else {
// 在没有 open-type=getUserInfo 版本的兼容处理
wx.getUserInfo({
success: res => {
app.globalData.userInfo = res.userInfo
this.setData({
userInfo: res.userInfo,
hasUserInfo: true
})
}
})
}
},
getUserInfo: function(e) {
console.log(e)
app.globalData.userInfo = e.detail.userInfo
this.setData({
userInfo: e.detail.userInfo,
hasUserInfo: true
})
},
changeColor: function (res) {
var date = res.currentTarget.id - 1 + 2
// 如果Id等于当前目标id,二次点击取消效果,在做单次点击导航栏就不需要。
if (this.data.clickId == res.currentTarget.id) {
this.setData({
// clickId = -1触发点击变化
clickId: -1
})
return;
}
this.setData({
clickId: res.currentTarget.id
// 给cid赋值
})
console.log(this.data.clickId)
}
})
返回1970
返回2018
解答源自百度,还需要再重新看一看。19:00