Element UI日期时间选择器报错(date.getFullYear is not a function) 解决方案
element
A Vue.js 2.0 UI Toolkit for Web
项目地址:https://gitcode.com/gh_mirrors/eleme/element
·
在项目中我们常常用到时间选择器、日期选择器和日期时间选择器,在获取选中的值时,往往跟我们向后台传的值的格式有所不同,下面我们就以日期时间为例,获取想要的数据格式,以及遇到的报错。
效果:

<div class="block">
<span class="demonstration">默认</span>
<el-date-picker
v-model="value1"
type="datetime"
@change="TimeChange"
placeholder="选择日期时间">
</el-date-picker>
</div>
我们在@change事件中获取它的值,我们将他打印出来
TimeChange(e) {
var that = this
console.log(e) // 打印结果为:Thu Jun 30 2022 10:19:19 GMT+0800 (中国标准时间)
},
我们可以看到打印的数据为:Thu Jun 30 2022 10:19:19 GMT+0800 (中国标准时间)
但是我们所需要的数据结构为 " yyyy-mm-dd hh:mm:ss "的格式
首先我给标签添加了value-format属性
<div class="block">
<span class="demonstration">默认</span>
<el-date-picker
v-model="value1"
type="datetime"
@change="TimeChange"
value-format = 'yyyy-mm-ddThh:mm:ss'
placeholder="选择日期时间">
</el-date-picker>
</div>
神奇的是,拿到的数据格式也是ok的,向后台传参也是没问题的,但就是报错

然后又重新修改,通过Thu Jun 30 2022 10:19:19 GMT+0800 (中国标准时间)去获取相应的数据并组成所需的格式,完整代码:
<div class="block">
<span class="demonstration">默认</span>
<el-date-picker
v-model="value1"
type="datetime"
@change="TimeChange"
placeholder="选择日期时间">
</el-date-picker>
</div>
TimeChange(e) {
var that = this
var date = new Date(e);
var y = date.getFullYear(); // 年
var m = date.getMonth() + 1; // 月
m = m < 10 ? ('0' + m) : m;
var d = date.getDate(); // 日
d = d < 10 ? ('0' + d) : d;
var h = date.getHours(); // 时
h = h < 10 ? ('0' + h) : h;
var min = date.getMinutes(); // 分
min = min < 10 ? ('0' + min) : min;
var s = date.getSeconds(); // 秒
s = s < 10 ? ('0' + s) : s;
that.time = y + '-' + m + '-' + d + 'T' + h + ':' + min + ':' + s;//拼在一起
},
这样就不报错了,最后that.time拼接的方式可以根据自己需要去拼接!
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:4 个月前 )
c345bb45
1 年前
a07f3a59
* Update transition.md
* Update table.md
* Update transition.md
* Update table.md
* Update transition.md
* Update table.md
* Update table.md
* Update transition.md
* Update popover.md 1 年前
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)