1.效果图如下
2.wxml代码
<view class="padding-top-bottom-25">
<view class="layout_horizontal">
<view style="flex:1;margin-left:25rpx;"><image src="../../image/common/rili.png" style="width:100%" mode="widthFix"></image></view>
<view style="flex:20;margin-left:10rpx;">{{time}}</view>
</view>
<view class="panel-week layout_horizontal text-center">
<view style="flex:1;" wx:for="{{weekArr}}">{{item}}</view>
</view>
<view class="layout_horizontal text-center" style="background:rgb(245,245,245)">
<view class="panel-mouth" style="flex:1;border:1px solid #ccc;" wx:for="{{dateList}}">
<view style="flex:1">{{item.day}}</view>
<view>{{item.tickey}}</view>
</view>
</view>
</view>
3.js代码
var date = new Date();
var month = date.getMonth();
var week = date.getDay();
var month = month + 1;
var day = date.getDate();
// week:周几,day:几号
var weekArr = [{ tickey: '', week: '', day: '' }, { tickey: '', week: '', day: '' }, { tickey: '', week: '', day: '' }, { tickey: '', week: '', day: '' }, { tickey: '', week: '', day: '' }, { tickey: '', week: '', day: '' }, { tickey: '',week: '', day: '' }];
// 本周内今天的前几天的数量
var leftNum = week;
// 本周内今天的后几天的数量
var rightNum = 7 - week;
// 本周内今天的前几天
for (var i = 0; i < leftNum; i++) {
weekArr[i].week = week - (week - i);
if (i == 0) {
weekArr[i].day = day - week;
weekArr[i].tickey="无票"
} else {
weekArr[i].day = day - (week - i);
weekArr[i].tickey = "无票"
}
}
// 本周内今天的后几天
for (var i = 0; i < rightNum; i++) {
weekArr[i + week].day = day + i;
if (month == '1' || month == '3' || month == '5' || month == '7' || month == '8' || month == '10' || month == '12') {
if (day + i > 31) {
weekArr[i + week].day = i;
}
} else if (month == '4' || month == '6' || month == '9' || month == '11') {
if (day + i > 30) {
weekArr[i + week].day = i;
}
} else if (month == '2') {
if (day + i > 28 || day + i > 29) {
weekArr[i + week].day = i;
}
}
weekArr[i + week].week = week + i;
weekArr[i + week].tickey = "有票"
}
console.info(weekArr)
this.setData({ dateList:weekArr})