时间选择器

68 阅读1分钟
   <el-form-item label="日期" prop="dates">
              <!--          <el-date-picker clearable size="small" style="width: 
              200px"-->
              <!--            v-model="form.starttime"-->
              <!--            type="datetime"-->
              <!--            value-format="yyyy-MM-dd"-->
              <!--            format="yyyy-MM-dd"-->
              <!--            placeholder="选择开始日期"-->
              <!--            :picker-options="pickerOptionsStart"-->
              <!--          >-->
              <!--          </el-date-picker>-->
              <el-date-picker
                v-model="form.dates"
                :type="form.inspectiontypeid == 2 ? 'monthrange' : 'daterange'"
                range-separator="至"
                start-placeholder="开始日期"
                end-placeholder="结束日期"
                :picker-options="pickerOptions"
              >
              </el-date-picker>
            </el-form-item>
            <!--        <el-form-item label="结束日期" prop="endtime">-->
            <!--          <el-date-picker clearable size="small" style="width: 200px"-->
            <!--            v-model="form.endtime"-->
            <!--            type="datetime"-->
            <!--            value-format="yyyy-MM-dd"-->
            <!--            format="yyyy-MM-dd"-->
            <!--            placeholder="选择结束时间"-->
            <!--            :picker-options="pickerOptionsEnd"-->
            <!--          >-->
            <!--          </el-date-picker>-->
            <!--        </el-form-item>-->
            
         pickerOptions: {
            disabledDate: (time) => {
              if (this.form.inspectiontypeid == 1) {
                return time.getTime() < Date.now() - 8.64e7;
              } else {
                var date = new Date();
                var year = date.getFullYear();
                var month = date.getMonth() + 1;
                if (month >= 1 && month <= 9) {
                  month = "0" + month;
                }
                var currentdate = year.toString() + month.toString();
                var timeyear = time.getFullYear();
                var timemonth = time.getMonth() + 1;
                if (timemonth >= 1 && timemonth <= 9) {
                  timemonth = "0" + timemonth;
                }
                var timedate = timeyear.toString() + timemonth.toString();
                return currentdate > timedate;
              }
            },
          },
          pickerOptionsStart: {
            disabledDate: (time) => {
              let endDateVal = this.form.endtime;
              if (endDateVal) {
                return time.getTime() > new Date(endDateVal).getTime();
              }
            },
          },
          pickerOptionsEnd: {
            disabledDate: (time) => {
              let beginDateVal = this.form.starttime;
              if (beginDateVal) {
                return time.getTime() < new Date(beginDateVal).getTime();
              }
            },
          },
          buttonshow: true,
        };
      },