element UI 时间选择器date-picker

element UI 时间选择器date-picker

vue

date-picker原有的输出值
Tue Mar 01 2022 00:00:00 GMT+0800 (中国标准时间)
需求:转换为YYYYMMDD格式传给后台

在这里插入图片描述
console.log传给后台的值
console.log传给后台的值

1.html

使用format指定输入框的格式。 使用 value-format 指定绑定值的格式。

<el-form-item label="日期">
            <el-date-picker
              v-model="rq"
              type="date"
              placeholder="选择日期"
              format="YYYY-MM-DD"
              value-format="YYYYMMDD"
              @change="changRq"
              :clearable="false"
              :disabled-date="disableDate"
            >
            </el-date-picker>
</el-form-item>

2.js

import { reactive, toRefs} from "vue";
const state = reactive({
      rq:""
    });

setup(){
	//一进入页面date-picker会显示当前日期
	onMounted(() => {
      getToday();
    });
    
	//获取当前默认日期
    const getToday = () => {
      const today = new Date().toLocaleDateString();
      state.rq = getDate(today);
    };

    const changRq = (val) => {
      state.rq = getDate(val);
    };
	
	//不可用日期,当前日期之后
    const disableDate = (time) => {
      return time.getTime() > Date.now();
    };
    
	//日期格式转换,传参为new Date()
	//默认情况下,date-picker组件接受并返回Date对象。
    const getDate = (time) => {
    //如果传参数为时间戳,10位需*1000,时间戳为13位的话不需乘1000
    //var date = new Date(timestamp*1000);
      const date = new Date(time);
      let Y = date.getFullYear();
      let M =
        date.getMonth() + 1 < 10
          ? "0" + (date.getMonth() + 1)
          : date.getMonth() + 1;
      let D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
      
	//return Y + "-" + M + "-" + D;改value-format没用,我也不知道为什么
    //最后传给后台的格式YYYYMMDD
      return Y + M + D;
    };
    return {
      ...toRefs(state),
      getToday,
      getDate,
      changRq,
      disableDate,
    };
}

微博同名,如有问题可留言至微博

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值