要素 UI の el-date-picker は時間制限を行います。初回以降の制限、現在の日付の制限を選択します。

要素 UI の el-date-picker は時間制限を行います

  1. 現在の日付に基づいて、将来の時刻を選択することはできません。

  2. 選択した最初の日付に基づいて、前後 7 日間のみ選択できます (数日間は自分で設定できます)。

    エル日付ピッカー

<el-date-picker
        v-model="timeVal"
        @change="changeDataTime"
        type="daterange"
        :picker-options="pickerOptions"
        range-separator="至"
        start-placeholder="开始日期"
        end-placeholder="结束日期">
</el-date-picker>

1 つ目の制限:現在の日付に基づいて、将来の時刻を選択することはできません。

data(){
    
    
        return {
    
    
        	//给的默认时间
			timeVal: [new Date()- 3600 * 1000 * 24 * 3, new Date()],
			pickerOptions: {
    
    
				disabledDate(time) {
    
    
					// 这个是当前日期后的日期不可选
                     return time.getTime() > Date.now()
				}
			}
        }
      }

2 番目の制限:最初に選択した日付に基づいて、前後 7 日間のみ選択できます (数日間は自分で設定できます)。

data(){
    
    
			// 不写这一句  disabledDate中的pickerOneDate 会报undifine
            var that = this;
            return {
    
    
            	//给的默认时间
				timeVal: [new Date()- 3600 * 1000 * 24 * 3, new Date()],
				// 用于已选择的第一个时间
                pickerOneDate: new Date()- 3600 * 1000 * 24 * 3,
              
                pickerOptions: {
    
    
                    // 获取选择的第一个时间
                    onPick: (obj) => {
    
    
                    	// 把第一个时间分配给pickerOneDate 
                        let startDate = new Date(obj.minDate).getTime();;
                        that.pickerOneDate = startDate;
                    },
                    disabledDate(time) {
    
     
                        if (that.pickerOneDate) {
    
    
                          // 自己配置选择几天,我这是6天
                            const day = 6 * 24 * 3600 * 1000
                            let maxTime = that.pickerOneDate + day
                            let minTime = that.pickerOneDate - day
                            return time.getTime() > maxTime || time.getTime() < minTime || time.getTime() > Date.now()
                        } else {
    
    
                        	// 这个是当前日期后的日期不可选,没有这个需求可删掉
                            return time.getTime() > Date.now()
                        }
                    },
                },
	}
}

おすすめ

転載: blog.csdn.net/weixin_45729937/article/details/128982072