亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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)效果

頁(yè)面初始化效果

點(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、選擇之后才能展示范圍,需要在頁(yè)面初始化時(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ì)算就可以了

[參考文章][//chabaoo.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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論