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

Element-ui DatePicker顯示周數(shù)的方法示例

 更新時間:2019年07月19日 09:51:52   作者:面包大蝦  
這篇文章主要介紹了Element-ui DatePicker顯示周數(shù)的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1.場景描述

我們公司是做電商的,運營的工作指標(biāo)都是按周來定的,所以他們對周特別敏感,希望我們能在日期選擇器上顯示周數(shù)。剛接到這個需求時,心中很不樂意,因為Element-ui的日期選擇器根本不支持顯示周數(shù)。我只能看看源碼來看看能否有解決的辦法

具體代碼大家可以在github中看到https://github.com/ElemeFE/element/pull/16415/commits/2b810cf73d1127645054265469bbb353d036cb21

2.查看源碼

我們很輕松就能找到DatePicker相關(guān)的代碼,在packages > date-picker 整個目錄都是date-picker的代碼,在date-picker > src > basic > date-table.vue中就是顯示日期的代碼,在這里竟然發(fā)現(xiàn)了一個屬性showWeekNumber,在date-table.vue的第83行。

showWeekNumber: {
  type: Boolean,
  default: false
 },

為了驗證這個參數(shù)對我們是否有幫助,我們把showWeekNumber默認設(shè)置為true試試,然后把第11行的

<th v-if="showWeekNumber">{{ t('el.datepicker.week') }}</th>

改為

<th v-if="showWeekNumber">周數(shù)</th>

設(shè)置用來設(shè)置國際化的,國際化文件中沒有這個對應(yīng)的翻譯,我們暫時先這么寫,不然會報錯。當(dāng)我們完成這個之后神奇的事情發(fā)生了

周數(shù)展示出來了,而且好像展示的事正確的,7.1-7.6就是2019年的第27周。既然能夠展示周數(shù),那么為什么element不開放出來這個參數(shù)了,是否是有什么問題呢。我們自己來簡單的測試下

3. 發(fā)現(xiàn)并解決問題

問題

(1)切換月時,周數(shù)并不會發(fā)生變化

(2)選中的是29周,輸入框中確展示的是28周

(3)hover選中時,周數(shù)不應(yīng)該展示高亮的樣式

(4)日期區(qū)間選中的樣式也不正確

解決問題

(1)解決周數(shù)不變化的問題,我們找到date-table.vue中第149行到152行

if (this.showWeekNumber) {
 if (!row[0]) {
  row[0] = { type: 'week', text: getWeekNumber(nextDate(startDate, i * 7 + 1)) };
 }
}

當(dāng)showWeekNumber為true時,row[0]就是用來展示周數(shù)的,當(dāng)row[0],存在時,就不在去獲取新的值,顯然不正確,我們把if判斷去掉就行,這樣就會更新周數(shù)

(2)解決選中后周數(shù)展示不正確的問題,我們找到date-table.vue中第14行到18行

<tr
 class="el-date-table__row"
 v-for="(row, key) in rows"
 :class="{ current: isWeekActive(row[1]) }"
 :key="key">

isWeekActive就是用來獲得當(dāng)前展示的周數(shù)的,當(dāng)展示周數(shù)之后我們要做適當(dāng)?shù)男薷?/p>

<tr
 class="el-date-table__row"
 v-for="(row, key) in rows"
 :class="{ current: isWeekActive(row[showWeekNumber ? 2 : 1]) }"
 :key="key">

至于第三個問題和第三個問題都是樣式的問題,我們修改下date-table對應(yīng)的樣式即可

最后看下展示效果

4. 最后

我已經(jīng)向element-ui提了pr,但是還沒有merge,具體的代碼大家可以在github中看到https://github.com/ElemeFE/element/pull/16415/commits/2b810cf73d1127645054265469bbb353d036cb21,解決了國際化的問題和增加了參數(shù)展示周數(shù)

5. 問題

代碼是已經(jīng)改好了,但是我們引入餓了么的代碼是直接通過npm下載的,線上環(huán)境也是npm下載的,我們是無法來更改npm的代碼的。那么我們怎么來解決這個問題呢,請看我的下一篇文章,我最近會更新。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解如何在Vue項目中發(fā)送jsonp請求

    詳解如何在Vue項目中發(fā)送jsonp請求

    這篇文章主要介紹了詳解如何在Vue項目中發(fā)送jsonp請求,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • vue使用pdf.js預(yù)覽pdf文件的方法

    vue使用pdf.js預(yù)覽pdf文件的方法

    在頁面進行pdf預(yù)覽的時候,由于文件不能夠打印和下載很難滿足客戶的需求,接下來通過本文給大家介紹vue使用pdf.js來進行pdf預(yù)覽,需要的朋友可以參考下
    2021-12-12
  • Vue數(shù)據(jù)更新視圖未更新的幾種解決方案

    Vue數(shù)據(jù)更新視圖未更新的幾種解決方案

    本文主要介紹在vue項目中,遇到數(shù)據(jù)更新但視圖不更新的情況時,無法使用watch監(jiān)聽、無法使用this.$set方法,同時使用this.$forceUpdate()無效時,所使用的解決方案,需要的朋友可以參考下
    2024-02-02
  • vue-video-player 斷點續(xù)播的實現(xiàn)

    vue-video-player 斷點續(xù)播的實現(xiàn)

    這篇文章主要介紹了vue-video-player 斷點續(xù)播的實現(xiàn),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • vue中使用element ui的彈窗與echarts之間的問題詳解

    vue中使用element ui的彈窗與echarts之間的問題詳解

    這篇文章主要介紹了vue中使用element ui的彈窗與echarts之間的問題詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Vue?中?provide和inject的使用

    Vue?中?provide和inject的使用

    這篇文章主要介紹了Vue中provide和inject的使用,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • Iframe在Vue中的狀態(tài)保持技術(shù)

    Iframe在Vue中的狀態(tài)保持技術(shù)

    這篇文章主要為大家介紹了Iframe在Vue中的狀態(tài)保持技術(shù)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • vue2封裝input組件方式(輸入的雙向綁定)

    vue2封裝input組件方式(輸入的雙向綁定)

    這篇文章主要介紹了vue2封裝input組件方式(輸入的雙向綁定),具有很好的參考價值,希望對大家有所幫助。
    2023-04-04
  • 使用vue腳手架(vue-cli)搭建一個項目詳解

    使用vue腳手架(vue-cli)搭建一個項目詳解

    這篇文章主要介紹了vue腳手架(vue-cli)搭建項目,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 詳解Vue中使用Echarts的兩種方式

    詳解Vue中使用Echarts的兩種方式

    這篇文章主要介紹了Vue中使用Echarts的兩種方式,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07

最新評論