新建小程序组件 selcalendar
js代码:
// pages/components/selcalendar.js
Component({
/**
* 组件的属性列表
*/
properties: {
//星期数组
weekText: {
type: Array,
value: ['日', '一', '二', '三', '四', '五', '六']
}
},
/**
* 组件的初始数据
*/
data: {
showstate:false,
selspace:1,/*0 单选 1 选择时间段*/
//当月格子
thisMonthDays: [],
//上月格子
empytGridsBefore: [],
//下月格子
empytGridsAfter: [],
allgrid:[],
selmonth:'',
year: 2020,
month: 1,
datestart:'',
dateend:'',
selflag:0 /* 0 未选择 ,1 选择开始 2 选择结束 */
},
/**
* 组件的方法列表
*/
methods: {
/*
selspace:0 单选 1 选择日期段
*/
funinit:function(selspace){
this.setData({selspace:selspace,selflag:0,datestart:'',dateend:''});
this.today();
//this.display();
},
/*选择时间段*/
selday:function(e){
var index = e.currentTarget.dataset.index;
if(this.data.selspace == 0){
/*选择日期*/
this.setData({
selflag:1,
datestart:this.data.allgrid[index].rq,
dateend:this.data.allgrid[index].rq
});
return;
}
/*选择日期段*/
var selflag = this.data.selflag;
if(selflag == 2){
selflag = 0;
this.setData({
datestart:'',
dateend:''
})
}
if(selflag ==0){
this.setData({
selflag:1,
datestart:this.data.allgrid[index].rq
})
}
else if(selflag ==1){
var datestart = this.data.datestart;
var dateend = this.data.allgrid[index].rq;
var tmprq = dateend;
if(datestart > dateend){
dateend = datestart;
datestart = tmprq;
}
this.setData({
selflag:2,
datestart:datestart,
dateend:dateend
})
}
},
funhide:function(){