vue 判斷兩個時間插件結束時間必選大于開始時間的代碼
效果展示:

代碼展示:
<template>
<div id="date_time_picker">
<van-button plain type="primary" @click="showPopFn()">點擊選擇日期</van-button>
<van-field v-model="timeValue" placeholder="選擇的日期結果" readonly />
<van-popup v-model="show" position="bottom" :style="{ height: '40%' }">
<van-datetime-picker v-model="currentDate" type="date" @change="changeFn()" @confirm="confirmFn()" @cancel="cancelFn()" />
</van-popup>
</div>
</template>
<script>
export default {
data() {
return {
msg: '',
currentDate: new Date(),
changeDate: new Date(),
show: false, // 用來顯示彈出層
timeValue: ''
}
},
methods: {
showPopFn() {
this.show = true;
},
showPopup() {
this.show = true;
},
changeFn() { // 值變化是觸發(fā)
this.changeDate = this.currentDate // Tue Sep 08 2020 00:00:00 GMT+0800 (中國標準時間)
},
confirmFn() { // 確定按鈕
this.timeValue = this.timeFormat(this.currentDate);
this.show = false;
},
cancelFn(){
this.show = true;
},
timeFormat(time) { // 時間格式化 2019-09-08
let year = time.getFullYear();
let month = time.getMonth() + 1;
let day = time.getDate();
return year + '年' + month + '月' + day + '日'
}
},
mounted() {
this.timeFormat(new Date());
}
}
</script>
<style>
</style>
注意:如果是按需引入的話,記得在main.js里面引入相應的文件奧。
// main.js文件里面的部分代碼
import {Button} from 'vant'
import { DatetimePicker } from 'vant';
import { Popup } from 'vant';
import { Field } from 'vant';
Vue.use(Button)
Vue.use(DatetimePicker)
Vue.use(Popup)
Vue.use(Field);
---------完。
補充知識:Vue + Vant DatetimePicker 日期選擇 常見的日期限制(只允許選擇當前月,整月選擇)
安裝Moment.js(Moment.js JavaScript 日期處理類庫 http://momentjs.cn/)
npm install moment --save # npm
yarn add moment # Yarn
<van-datetime-picker
class="datePick"
v-model="currentDate"
type="date"
:min-date="minDate"
:max-date="maxDate"
readonly="readonly"
@confirm="confirmDate"
@cancel="cancelDate"/>
mounted() {
let dateLimit = new Date();
let year = date.getFullYear();
let month = date.getMonth()+1;
let d = new Date(year, month, 0);
//最大允許選擇當前日期
this.maxDate = new Date(this.$moment(dateLimit).format('YYYY/MM/DD'));
//最大允許選擇當前日期+3個月
this.maxDate = new Date(this.$moment(dateLimit).add('3','M').format('YYYY/MM/DD'));
//最小允許選擇當前日期
this.minDate = new Date(this.$moment(dateLimit).format('YYYY/MM/DD'));
//最小允許選擇當前日期-3個月
this.minDate = new Date(this.$moment(dateLimit).subtract('3','M').format('YYYY/MM/DD');
//最小允許選擇當前日期-3個月(當前月不算,減去三個整月2020/06/01----2020/09/22)
this.minDate = new Date(this.$moment(dateLimit).subtract('3','M').format('YYYY/MM')+'/01');
//只允許選擇當前月
let year = dateLimit.getFullYear();
let month = dateLimit.getMonth()+1;
let d = new Date(year, month, 0);
let enddate = d.getDate();
this.minDate = new Date(this.$moment(dateLimit).format('YYYY/MM/')+'01');
this.maxDate = new Date(this.$moment(dateLimit).format('YYYY/MM/')+ enddate);
}
其中minData 和maxData 兩兩組合即可日期限制。
以上這篇vue 判斷兩個時間插件結束時間必選大于開始時間的代碼就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
詳解vue.js 開發(fā)環(huán)境搭建最簡單攻略
本篇文章主要介紹了vue.js 開發(fā)環(huán)境搭建最簡單攻略,這里整理了詳細的步驟,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
Vue實現(xiàn)添加數(shù)據(jù)到二維數(shù)組并顯示
這篇文章主要介紹了Vue實現(xiàn)添加數(shù)據(jù)到二維數(shù)組并顯示方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-04-04
vue中優(yōu)雅實現(xiàn)數(shù)字遞增特效的詳細過程
項目中需要做數(shù)字滾動增加的效果,一開始很懵,研究了一下原理,發(fā)現(xiàn)很簡單,下面這篇文章主要給大家介紹了關于vue中優(yōu)雅實現(xiàn)數(shù)字遞增特效的詳細過程,需要的朋友可以參考下2022-12-12
解決vue使用vant輪播組件swipe + flex時文字抖動問題
這篇文章主要介紹了解決vue使用vant輪播組件swipe + flex時文字抖動問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2021-01-01
Vue Router實現(xiàn)多層嵌套路由的導航的詳細指南
在 Vue 應用中,使用 Vue Router 可以輕松實現(xiàn)多層嵌套路由的導航,嵌套路由允許你創(chuàng)建一個多層次的 URL 結構,這在構建具有復雜導航結構的應用程序時非常有用,需要的朋友可以參考下2024-10-10

