问题:将“日期”输入字段从“ mm / dd / yyyy”更改为“ dd / mm / yyyy”。
我已经知道在收到日期之后如何进行更改,但是问题在于,当客户端键入内容时,输入仍会收到“ mm / dd / yyyy”。
我的猫鼬模式:
const schemaRegister = new mongoose.Schema({
date: Date,
});
我的输入区域:
<b-form-input v-mask="'##/##/####'" v-model="date"></b-form-input>
我的日期格式(使用momentsjs):
changeDateFormat() {
let fixedDate = moment(this.registers[i].date).format("L");
this.registers[i].date = fixedDate;
}
我在桌子上显示了“ fixedDate”,但这并没有多大帮助,因为当客户键入内容时,他认为前两个广告位是天(dd),但实际上是月(mm) )。作为解决方案,我想到了使用Date作为字符串,但是这样会使验证变得非常困难。
答案 0 :(得分:0)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
只需按照正确的顺序传递参数,就像这样:
new Date(day, monthIndex, year);
答案 1 :(得分:0)
我没有正确使用'momentsjs',首先我需要使用
来解析输入日期 let formatedDate = moment(this.date,"DD-MM-YYYY");
然后显示我应该使用的日期
let fixedDate = moment(this.registers.date).format("DD/MM/YYYY");