element ui 日期时间组件默认展示最近一周、最近三个月

<el-form-item label="出库日期:">
        <el-date-picker
          type="datetimerange"
          range-separator="-"
          @change="(e) => {changeTime({startItem: 'outWarehouseStartTime',endItem: 'outWarehouseEndTime',value: e})}"
          v-model="outWarehouseTimeLine"
          start-placeholder="出库开始日期"
          end-placeholder="出库结束日期"
          value-format="yyyy-MM-dd HH:mm:ss"
        ></el-date-picker>
      </el-form-item>
 
 import formatTime from "@/utils/formatTime.js"



 data() {
    return {
      outWarehouseTimeLine : [],  
    };
  },
mounted() {
    let times = 86400000 * 7 //一整周的毫秒数
    let curTime = formatTime(new Date().getTime()).split(' ')[0]
    let beforeTime = formatTime(new Date().getTime() - times).split(' ')[0]
    this.outWarehouseTimeLine = [beforeTime, curTime]
    this.changeTime({startItem: 'outWarehouseStartTime',endItem: 'outWarehouseEndTime',value: [beforeTime, curTime]})

  },

    changeTime(e){
      this.formData[e.startItem] = e.value ? e.value[0] + ' 00:00:00' : ''
      this.formData[e.endItem] = e.value ? e.value[1] + ' 23:59:59' : ''
    },

 

formatTime.js

function add0(m){return m<10?'0'+m:m }
function formatTime(time){
  //shijianchuo是整数,否则要parseInt转换
  var time = new Date(time);
  var y = time.getFullYear();
  var m = time.getMonth()+1;
  var d = time.getDate();
  var h = time.getHours();
  var mm = time.getMinutes();
  var s = time.getSeconds();
  return y+'-'+ add0(m) +'-'+ add0(d)+' '+ add0(h)+':'+ add0(mm)+':'+ add0(s);
}

export default formatTime

 

最近三个月

this.createTimeLine = [moment().subtract(3, 'month').format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")]
 this.formData.endCreateTime = moment().format("YYYY-MM-DD") + ' 23:59:59'
this.formData.startCreateTime = moment().subtract(3, 'month').format("YYYY-MM-DD") + ' 00:00:00'

 

posted @ 2022-06-28 12:50  shuihanxiao  阅读(3196)  评论(0)    收藏  举报