最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

el-date-picker設(shè)置日期默認(rèn)值兩種方法(當(dāng)月月初至月末)

 更新時間:2023年08月22日 14:25:54   作者:kobe_IT  
這篇文章主要給大家介紹了關(guān)于el-date-picker設(shè)置日期默認(rèn)值(當(dāng)月月初至月末)的相關(guān)資料,文中通過代碼示例將解決的辦法介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價值,需要的朋友可以參考下

1.ElementUI日期樣式

        <el-date-picker
          v-model="queryParams.signDate"
          type="daterange"
          align="right"
          unlink-panels
          size="small"
          value-format="yyyy-MM-dd"
          format="yyyy-MM-dd"
          range-separator="至"
          start-placeholder="開始日期"
          end-placeholder="結(jié)束日期"
          :picker-options="pickerOptions">
        </el-date-picker>

2.定義數(shù)據(jù)以及方法

這里面的signDate可以賦值為空字符''或者賦值為空數(shù)組[],這里面包含兩個值,一個值為開始日期,另一個值為結(jié)束日期

<script>
export default {
  data() {
    return {
      queryParams: {  
        signDate: ''
      },
      pickerOptions: {
        shortcuts: [{
          text: '最近一周',
          onClick(picker) {
            const end = new Date()
            const start = new Date()
            start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
            picker.$emit('pick', [start, end])
          }
        }, {
          text: '最近一個月',
          onClick(picker) {
            const end = new Date()
            const start = new Date()
            start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
            picker.$emit('pick', [start, end])
          }
        }, {
          text: '最近三個月',
          onClick(picker) {
            const end = new Date()
            const start = new Date()
            start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
            picker.$emit('pick', [start, end])
          }
        }]
      }
    }
  },
  created() {
    // 初始化默認(rèn)時間
    this.defaultDate()
  },
  methods: {
    // 初始化默認(rèn)時間
    defaultDate() {
      var date = new Date()
      var year = date.getFullYear().toString()
      var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1).toString() : (date.getMonth() + 1).toString()
      // var da = date.getDate() < 10 ? '0' + date.getDate().toString() : date.getDate().toString()
      var da = new Date(date.getFullYear(), month, 0).getDate()
      da < 10 ? '0' + da.toString() : da.toString()
      var beg = year + '-' + month + '-01'
      var end = year + '-' + month + '-' + da
      this.queryParams.signDate = [beg, end] //將值設(shè)置給插件綁定的數(shù)據(jù)
    }
  },
  watch: {
    // 監(jiān)聽日期清理后數(shù)據(jù)為null進(jìn)行處理否則會報錯
    'queryParams.signDate'(newVal) {
      if (newVal == null) {
        this.queryParams.signDate = ''
        this.queryParams.startTime = ''
        this.queryParams.endTime = ''
      }
    }
  }
}
</script>

注意:日期選擇器清除完后這邊有坑,選擇完日期格式清除后重新加載,他會給綁定的signDate賦值為null,重新加載頁面會報錯,所以要設(shè)置上面的監(jiān)聽器,如果值為null時賦值為空字符串'',不然會報下面的錯,設(shè)置了監(jiān)聽器可以正常運(yùn)行

第二種方式:將開始日期和結(jié)束日期分為兩個時間選擇器

<el-form-item  prop="startTime" style="margin-left: 20px">
        <el-date-picker
          v-model="queryParams.startTime"
          type="date"
          size="small"
          placeholder="開始日期"
          value-format="yyyy-MM-dd"
          format="yyyy-MM-dd"
          style="width: 130px"
          :picker-options="pickerOptionsStart"
        >
        </el-date-picker>
      </el-form-item>
      <el-form-item label="至" prop="endTime">
        <el-date-picker
          v-model="queryParams.endTime"
          type="date"
          size="small"
          placeholder="結(jié)束日期"
          value-format="yyyy-MM-dd"
          format="yyyy-MM-dd"
          style="width: 130px"
          :picker-options="pickerOptionsEnd"
        >
        </el-date-picker>
      </el-form-item>

定義綁定的參數(shù)及方法

<script>
export default {
  data() {
    return {
      queryParams: {
        startTime: '',
        endTime: '',
      },
      // 開始時間不能大于結(jié)束時間
      pickerOptionsStart: {
        disabledDate: (time) => {
          if (this.queryParams.endTime) {
            return (
              time.getTime() >= new Date(this.queryParams.endTime).getTime()
            )
          }
        }
      },
      // 結(jié)束時間不能小于開始時間
      pickerOptionsEnd: {
        disabledDate: (time) => {
          if (this.queryParams.startTime) {
            return (
              time.getTime() <= new Date(this.queryParams.startTime).getTime()
            )
          }
        }
      }
    }
  },
  created() {
    /** 重置按鈕操作 */
    resetForm() {
      this.$refs['formName'].resetFields()
      this.queryParams.startTime = ''
      this.queryParams.endTime = ''
    },
    // 初始化默認(rèn)時間
    defaultDate() {
      var date = new Date()
      var year = date.getFullYear().toString()
      var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1).toString() : (date.getMonth() + 1).toString()
      // var da = date.getDate() < 10 ? '0' + date.getDate().toString() : date.getDate().toString()
      var da = new Date(date.getFullYear(), month, 0).getDate()
      da < 10 ? '0' + da.toString() : da.toString()
      var beg = year + '-' + month + '-01'
      var end = year + '-' + month + '-' + da
      this.queryParams.startTime = beg //將值設(shè)置給插件綁定的數(shù)據(jù)
      this.queryParams.endTime = end
    }
  },
  watch: {
    // 監(jiān)聽日期清理后數(shù)據(jù)為null進(jìn)行處理否則會報錯
    'queryParams.startTime'(newVal) {
      if (newVal == null) {
        this.queryParams.startTime = ''
      }
    },
    'queryParams.endTime'(newVal) {
      if (newVal == null) {
        this.queryParams.endTime = ''
      }
    }
  }
}
</script>

總結(jié) 

到此這篇關(guān)于el-date-picker設(shè)置日期默認(rèn)值兩種方法(當(dāng)月月初至月末)的文章就介紹到這了,更多相關(guān)el-date-picker設(shè)置日期默認(rèn)值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue項目中首頁長時間白屏的原因以及解決過程

    Vue項目中首頁長時間白屏的原因以及解決過程

    這篇文章主要介紹了Vue項目中首頁長時間白屏的原因以及解決過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Vue替代vuex的存儲庫Pinia詳細(xì)介紹

    Vue替代vuex的存儲庫Pinia詳細(xì)介紹

    這篇文章主要介紹了Vue替代vuex的存儲庫Pinia,聽說pinia與vue3更配,便開啟了vue3的學(xué)習(xí)之路,pinia 和 vuex 具有相同的功效, 是 Vue 的存儲庫,它允許您跨組件/頁面共享狀態(tài)
    2022-09-09
  • 基于Vue3+Pinia的移動端頁面緩存策略的解決方案

    基于Vue3+Pinia的移動端頁面緩存策略的解決方案

    最近小編在開發(fā)移動端 Web 應(yīng)用時,遇到了一個問題:頁面緩存,經(jīng)過一番折騰和還有AI的加持,小編也順利解決了,今天就來和大家分享這個基于導(dǎo)航棧的智能緩存策略,需要的朋友可以參考下
    2025-10-10
  • vue如何獲取點(diǎn)擊事件源的方法

    vue如何獲取點(diǎn)擊事件源的方法

    本篇文章主要介紹了vue如何獲取點(diǎn)擊事件源的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • vue項目中導(dǎo)入swiper插件的方法

    vue項目中導(dǎo)入swiper插件的方法

    這篇文章主要介紹了vue項目中導(dǎo)入swiper插件的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • vue-pdf如何通過文件流預(yù)覽pdf文件

    vue-pdf如何通過文件流預(yù)覽pdf文件

    這篇文章主要介紹了vue-pdf如何通過文件流預(yù)覽pdf文件問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • element自定義 多文件上傳 觸發(fā)多次on-change問題

    element自定義 多文件上傳 觸發(fā)多次on-change問題

    這篇文章主要介紹了element自定義 多文件上傳 觸發(fā)多次on-change問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Vue.js中使用Vuex實(shí)現(xiàn)組件數(shù)據(jù)共享案例

    Vue.js中使用Vuex實(shí)現(xiàn)組件數(shù)據(jù)共享案例

    這篇文章主要介紹了Vue.js中使用Vuex實(shí)現(xiàn)組件數(shù)據(jù)共享案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • Vue中使用flv.js播放視頻的示例詳解

    Vue中使用flv.js播放視頻的示例詳解

    這篇文章主要為大家詳細(xì)介紹了如何在Vue項目中使用flv.js播放視頻,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-04-04
  • 詳解vue-meta如何讓你更優(yōu)雅的管理頭部標(biāo)簽

    詳解vue-meta如何讓你更優(yōu)雅的管理頭部標(biāo)簽

    這篇文章主要介紹了詳解vue-meta如何讓你更優(yōu)雅的管理頭部標(biāo)簽,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01

最新評論

禄劝| 永寿县| 大冶市| 手游| 客服| 射阳县| 利辛县| 全南县| 罗山县| 南丰县| 黄浦区| 汪清县| 汾西县| 方山县| 琼结县| 黄梅县| 珲春市| 专栏| 黎平县| 铜鼓县| 呼和浩特市| 商丘市| 项城市| 湘西| 洱源县| 莲花县| 扎囊县| 朝阳市| 巫山县| 阳城县| 铜梁县| 长岭县| 耒阳市| 怀安县| 灌阳县| 肃北| 含山县| 德阳市| 长白| 淮安市| 黄梅县|