Vue3 elementUI如何修改el-date-picker默認時間
elementUI修改el-date-picker默認時間
HTML:
<el-date-picker ? ?v-model="dateValue" ? ?type="daterange" ? ?size="small" ? ?unlink-panels ? ?range-separator="至" ? ?start-placeholder="開始日期" ? ?end-placeholder="結(jié)束日期" ? ?:shortcuts="shortcuts"> </el-date-picker>
JS:
//放在頁面的state中 shortcuts: [ ? ? ? ? { ? ? ? ? ? text: "本周", ? ? ? ? ? value: () => { ? ? ? ? ? ? const end = new Date(); ? ? ? ? ? ? const start = new Date(); ? ? ? ? ? ? //周日算第一天,如果周日查詢本周的話,天數(shù)是0,所有如果是0,默認設(shè)置為7,處理當前周 ? ? ? ? ? ? const nows = start.getDay() || 7;? ? ? ? ? ? ? start.setTime(start.getTime() - 3600 * 1000 * 24 * (nows - 1)); ? ? ? ? ? ? end.setTime(end.getTime() - 3600 * 1000 * 24 * (nows - 7)); ? ? ? ? ? ? console.log(start, end, "end"); ? ? ? ? ? ? return [start, end]; ? ? ? ? ? }, ? ? ? ? }, ? ? ? ? { ? ? ? ? ? text: "本月", ? ? ? ? ? value: () => methods.getTime(), ? ? ? ? }, ? ? ? ? { ? ? ? ? ? text: "上月", ? ? ? ? ? value: () => { ? ? ? ? ? ? const oDate = new Date(); ? ? ? ? ? ? let year = oDate.getFullYear(); ? ? ? ? ? ? let month = oDate.getMonth(); ? ? ? ? ? ? let start, end; ? ? ? ? ? ? if (month == 0) { ? ? ? ? ? ? ? year--; ? ? ? ? ? ? ? start = new Date(year, 11, 1); ? ? ? ? ? ? ? end = new Date(year, 11, 31); ? ? ? ? ? ? } else { ? ? ? ? ? ? ? start = new Date(year, month - 1, 1); ? ? ? ? ? ? ? end = new Date(year, month, 0); ? ? ? ? ? ? } ? ? ? ? ? ? return [start, end]; ? ? ? ? ? }, ? ? ? ? }, ? ? ? ],
處理本月的函數(shù):
? ? ? // 獲取本月時間段datePicker使用 ? ? ? getTime() { ? ? ? ? const oDate = new Date(); ? ? ? ? let year = oDate.getFullYear(); ? ? ? ? let month = 0//oDate.getMonth(); ? ? ? ? let start, end; ? ? ? ? if (month == 0) { ? ? ? ? ? year--; ? ? ? ? ? start = new Date(year, 0, 1); ? ? ? ? ? end = new Date(year, 12, 31); ? ? ? ? } else { ? ? ? ? ? start = new Date(year, month, 1); ? ? ? ? ? end = new Date(year, month + 1, 0); ? ? ? ? } ? ? ? ? state.dateValue = [start, end]; ? ? ? ? return [start, end]; ? ? ? },
el-date-picker設(shè)置默認時間區(qū)間
需求
需要一進頁面時,把日期選擇器,默認展示為2012-01-01至當前日期-1天
即圖:
代碼和注釋如下
2.1
<el-form-item label="時間周期:" prop="timeCycle" > <el-date-picker v-model="createForm.timeCycle" type="datetimerange" :picker-options="pickerOptions" //快捷時間選擇的函數(shù) range-separator="至" start-placeholder="開始日期" end-placeholder="結(jié)束日期" value-format="yyyy-MM-dd" //默認值為這種格式 > </el-date-picker> </el-form-item>
2.2
由于開始時間是固定的,所以需要在定義數(shù)據(jù)時定義好,結(jié)束時間不能不填,也不能是" ",也不能是不符合時間格式的,否則整個時間選擇器都不會展示了
data(){ return { createForm: { timeCycle:["2012-01-01","2012-01-01"] } } }
2.3
在頁面一加載時,在created函數(shù)里把結(jié)束時間算好,然后賦值到定義的timeCycle數(shù)組的第二項
created(){ const end = new Date();//獲取當前的日期 end.setTime(end.getTime() - 3600 * 1000 * 24 ) //計算,將當期日期-1天 //此時得到的是中國標準時間,格式不是yyyy-MM-dd,需要用dateFormat這個函數(shù)轉(zhuǎn)換下 this.createForm.timeCycle[1]=this.dateFormat(end) //將轉(zhuǎn)換完的正確格式的結(jié)束時間賦值到timeCycle數(shù)組的第二項 }
2.4
時間格式的轉(zhuǎn)換函數(shù)
中國標準時間,即,例如:Wed Oct 24 2018 20:00:00 GMT+0800
轉(zhuǎn)換為:yyyy-MM-dd格式,即:2018-10-24
methods:{ dateFormat(dateData) { var date = new Date(dateData) var y = date.getFullYear() var m = date.getMonth() + 1 m = m < 10 ? ('0' + m) : m var d = date.getDate() d = d < 10 ? ('0' + d) : d const time = y + '-' + m + '-' + d return time } }
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- Vue3+ElementPlus el-date-picker設(shè)置可選時間范圍的示例代碼
- elementUI組件中el-date-picker限制時間范圍精確到小時的方法
- element組件el-date-picker禁用當前時分秒之前的日期時間選擇
- 簡單設(shè)置el-date-picker的默認當前時間問題
- element?ui時間日期選擇器el-date-picker報錯Prop?being?mutated:"placement"解決方式
- vue el-date-picker動態(tài)限制時間范圍案例詳解
- vue element-ui el-date-picker限制選擇時間為當天之前的代碼
- el-date-picker時間清空值為null處理
相關(guān)文章
vue 實現(xiàn)Web端的定位功能 獲取經(jīng)緯度
這篇文章主要介紹了vue 實現(xiàn)Web端的定位功能獲取經(jīng)緯度,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-08-08如何正確解決VuePress本地訪問出現(xiàn)資源報錯404的問題
這篇文章主要介紹了如何正確解決VuePress本地訪問出現(xiàn)資源報錯404的問題,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12vue實現(xiàn)動態(tài)綁定行內(nèi)樣式style的backgroundImage
這篇文章主要介紹了vue實現(xiàn)動態(tài)綁定行內(nèi)樣式style的backgroundImage方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07mpvue中配置vuex并持久化到本地Storage圖文教程解析
這篇文章主要介紹了mpvue中配置vuex并持久化到本地Storage的教程詳解,# 配置vuex和在vue中相同,只是mpvue有一個坑,就是不能直接在new Vue的時候傳入store。本文分步驟給大家介紹的非常詳細,需要的朋友參考下吧2018-03-03