欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

element中datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周的方法

 更新時(shí)間:2023年09月30日 08:40:52   作者:睡不醒的一天  
最近項(xiàng)目中需要用到日期選擇器,所以這里給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于element中datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周的相關(guān)資料,需要的朋友可以參考下

element的datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周

實(shí)現(xiàn)效果

頁面初始化效果

點(diǎn)擊上一周

點(diǎn)擊下一周

實(shí)現(xiàn)選擇周一和周日過程

1、采用el-date-picker組件,類型使用 week

<el-date-picker
    v-model="weeklyDate"
    type="week"
    @change="newDateWeekHandle"
    placeholder="選擇周" style="width: 230px">
</el-date-picker>

但是范圍是從周日開始,從周一開始需要將 firstDayOfWeek 設(shè)置為 1

<el-date-picker
    v-model="weeklyDate"
    type="week"
    :picker-options="{'firstDayOfWeek': 1}"
    @change="newDateWeekHandle"
    placeholder="選擇周" style="width: 230px">
</el-date-picker>

2、框里還需要展示周一和周日的范圍,設(shè)置兩個(gè)新的屬性startDate和endDate

<el-date-picker
    :format="startDate + ' 至 ' + endDate"
    v-model="weeklyDate"
    type="week"
    :picker-options="{'firstDayOfWeek': 1}"
    @change="newDateWeekHandle"
    placeholder="選擇周" style="width: 230px">
</el-date-picker>

根據(jù)model屬性(默認(rèn)是星期二),來算出展示的星期一和周期日

newDateWeekHandle(){
      const now = new Date(this.weeklyDate);
      const nowTime = now.getTime();
      const day = now.getDay();
      const oneDayTime = 24*60*60*1000;
      const mondayTime = nowTime - (day-1)*oneDayTime;
      const sundayTime = nowTime + (7-day)*oneDayTime;
      this.startDate = this.$moment(mondayTime).format('YYYY-MM-DD');
      this.endDate = this.$moment(sundayTime).format('YYYY-MM-DD');
},

這里用到了moment.js,需要引入

3、下載moment

npm install moment --save

為了可以全局使用到,在main.js中全局方法掛載

import moment from 'moment'
Vue.prototype.$moment = moment

4、選擇之后才能展示范圍,需要在頁面初始化時(shí)就給model屬性賦值

  • 在created中調(diào)用getDateWeek方法
  • 同時(shí)進(jìn)行計(jì)算周一和周日
    getDateWeek(){
      const now = new Date();
      const nowTime = now.getTime();
      const day = now.getDay();
      const oneDayTime = 24*60*60*1000;
      const mondayTime = nowTime - (day-2)*oneDayTime;//默認(rèn)是周二
      this.weeklyDate = new Date(mondayTime);
      this.newDateWeekHandle();
    },

實(shí)現(xiàn)上一周和下一周的切換功能

實(shí)際上就是計(jì)算model屬性值就可以了,通過Date的setDate方法實(shí)現(xiàn)日期的相加減,然后根據(jù)新得到的日期計(jì)算就可以了

[參考文章][//www.dbjr.com.cn/javascript/299660yzs.htm]

    handleLast(){
      const last = new Date(this.weeklyDate);
      last.setDate(last.getDate()-7);//日期相加減
      this.weeklyDate = last;
      this.newDateWeekHandle();
    },
    handleNext(){
      const next = new Date(this.weeklyDate);
      next.setDate(next.getDate()+7);
      this.weeklyDate = next;
      this.newDateWeekHandle();
    },

總結(jié) 

到此這篇關(guān)于element中datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周的文章就介紹到這了,更多相關(guān)element datepicker日期選擇器選擇日期內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue用elementui寫form表單時(shí),在label里添加空格操作

    vue用elementui寫form表單時(shí),在label里添加空格操作

    這篇文章主要介紹了vue用elementui寫form表單時(shí),在label里添加空格操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue定義在computed的變量無法更新問題及解決

    vue定義在computed的變量無法更新問題及解決

    這篇文章主要介紹了vue定義在computed的變量無法更新問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue中template模板編譯的過程全面剖析

    vue中template模板編譯的過程全面剖析

    這篇文章主要介紹了vue中template模板編譯的過程全面剖析,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 解讀Vue3中keep-alive和動(dòng)態(tài)組件的實(shí)現(xiàn)邏輯

    解讀Vue3中keep-alive和動(dòng)態(tài)組件的實(shí)現(xiàn)邏輯

    這篇文章主要介紹了Vue3中keep-alive和動(dòng)態(tài)組件的實(shí)現(xiàn)邏輯,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue實(shí)現(xiàn)網(wǎng)頁語言國際化切換

    vue實(shí)現(xiàn)網(wǎng)頁語言國際化切換

    這篇文章介紹了vue實(shí)現(xiàn)網(wǎng)頁語言國際化切換的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2021-11-11
  • 淺析Proxy可以優(yōu)化vue的數(shù)據(jù)監(jiān)聽機(jī)制問題及實(shí)現(xiàn)思路

    淺析Proxy可以優(yōu)化vue的數(shù)據(jù)監(jiān)聽機(jī)制問題及實(shí)現(xiàn)思路

    這篇文章主要介紹了淺析Proxy可以優(yōu)化vue的數(shù)據(jù)監(jiān)聽機(jī)制問題及實(shí)現(xiàn)思路,需要的朋友可以參考下
    2018-11-11
  • Vue打包后頁面出現(xiàn)空白解決辦法

    Vue打包后頁面出現(xiàn)空白解決辦法

    本文主要介紹了Vue打包后頁面出現(xiàn)空白解決辦法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • vue2項(xiàng)目使用exceljs多表頭導(dǎo)出功能詳解

    vue2項(xiàng)目使用exceljs多表頭導(dǎo)出功能詳解

    ExcelJS是一個(gè)用于在Node.js和瀏覽器中創(chuàng)建、讀取和修改Excel文件的強(qiáng)大JavaScript庫,下面這篇文章主要給大家介紹了關(guān)于vue2項(xiàng)目使用exceljs多表頭導(dǎo)出功能的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • element?el-tree折疊收縮的實(shí)現(xiàn)示例

    element?el-tree折疊收縮的實(shí)現(xiàn)示例

    本文主要介紹了element?el-tree折疊收縮的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Vue3進(jìn)行樣式Scoped和Global的設(shè)置方法

    Vue3進(jìn)行樣式Scoped和Global的設(shè)置方法

    在 Vue 3 中,組件化開發(fā)成為了我們提升前端開發(fā)效率的利器,其中,樣式的管理也是一個(gè)至關(guān)重要的部分,在 Vue 中,我們會經(jīng)常使用兩種樣式作用域:Scoped 樣式和 Global 樣式,本文將通過示例代碼來介紹Vue3如何進(jìn)行樣式Scoped和Global的設(shè)置,需要的朋友可以參考下
    2025-01-01

最新評論