element date-picker解决周数获取问题(ISOWEEK)

在使用element date-picker组件时发现周数获取问题,如下
如:当前如期为2021/10/08
date-picker显示周数为202040

image.png

这个周数202040是ISOWEEK周数,而我们后端使用的是非ISOWEEK周数为202041
如果此时你需要的刚好是ISOWEEK周数,可以直接使用,如果想拿到非ISOWEEK周数,该如何处理~,本以为element会提供,找了半天没找到,有知道的朋友可以下方留言告诉我,感谢!!!

下面是我获取非ISOWEEK周数的处理方式

实现方案

通过moment(val).week() 可以获取当前val日期非ISOWEEK周数
获取非ISOWEEK周数后再赋值给date-picker

1.安装moment,此处省略
2.给出dom


     

$('#currentWeekly input')可以拿到date-picker显示值,同样也可以赋值
3.逻辑处理

  var nowWeek = new Date();
  var dateVue = new Vue({
    el: el,
    data: {
      dataStart: nowWeek,
    },
    created() { },
    mounted(){
      //初始显示当前时间非ISOWEEK周数
      $('#currentWeekly input').val(moment().isoWeekYear() + 'w' + moment(nowWeek).week())
    },
    computed: {
      dateFormat: function (day) {
        return 'yyyy[w]WW';
      },
    },
    watch: {
      dataStart(newVal, oldVal) {
        //change事件中获取date-picker值
        this.$nextTick(() => {
          //获取当前非ISOWEEK周数
          $('#currentWeekly input').val(moment().isoWeekYear() + 'w' + moment(newVal).week())
          
        })
      },
    },
    methods: {
      
    },
  });

注意最终取值不能从dataStart中获取了,使用$('#currentWeekly input').val()获取最终结果

你可能感兴趣的:(element date-picker解决周数获取问题(ISOWEEK))