引入element 对日期控件
筛选月的话用 月的控件
筛选周的话用周的控件
-
有默认值的时候(禁用规则方法写在computed里面)
-
没有默认值的时候(写在data里面)
关于月的控件
-
//月的控件 <el-date-picker v-model="formInline.month" // 绑定的值 type="monthrange" value-format="yyyyMMdd" //选择后传给后端的类型 range-separator="至" start-placeholder="开始月份" end-placeholder="结束月份" key="month" //避免点击下拉框,下拉框位置跑到左上角去 :picker-options="pickerOptions" //禁用的规则 > </el-date-picker>
-
//配置规则
computed: { pickerOptions() { const _this = this; return { disabledDate(time) { let agoMonth = new Date( moment().subtract(12,"month").format("YYYY-MM-1")); //选择月时不得超过13个月 return ( time.getTime() > Date.now() || time.getTime() < agoMonth.getTime(); }, }; }, },
关于周的控件
-
<el-form-item label="开始日期"> <el-date-picker v-model="formInline.startWeek" type="week" format="yyyy 第 WW 周" value-format="yyyyMMdd" placeholder="选择周" key="startWeek" :picker-options="startpickerOptions" > </el-date-picker> </el-form-item> <el-form-item label="结束日期"> <el-date-picker v-model="formInline.endWeek" type="week" format="yyyy 第 WW 周" value-format="yyyyMMdd" placeholder="选择周" key="endWeek" :picker-options="pickerOptions" > </el-date-picker> </el-form-item>
-
computed: {
// 选择周时,结束日期的选择 pickerOptions() { const _this = this; return { disabledDate(time) { const ago50 = new Date(moment().subtract(50, "week").format("YYYY-MM-DD")).getTime() //选择周时最多不超过50周。 return ( time.getTime() > Date.now() || time.getTime() < ago50 || time.getTime() < new Date(moment(_this.formInline.startWeek).format("YYYY-MM-DD")).getTime() //结束时间大于开始时间 ); }, }; } }, // 选择周时,开始日期的选择 startpickerOptions() { const _this = this; return { disabledDate(time) { const ago50 = new Date(moment().subtract(50, "week").format("YYYY-MM-DD")).getTime(); //同样选择周时不得超过50个周 return ( time.getTime() > Date.now() || time.getTime() < ago50 || time.getTime() > new Date( moment(_this.formInline.endWeek).format("YYYY-MM-DD")).getTime()。 //选择开始日期不得大于结束日期 ); }, }; }, },
标签:控件,return,getTime,日期,time,Date,范围 From: https://www.cnblogs.com/czwhandsome/p/16988266.html