vue处理mysql数据库中的时间数据(datetime)


一、使用过滤器处理接收的时间数据

mysql中使用datetime类型的数据,长度不用设置

 

 

这时接收到的时间格式是这样的

{{ item.date  }}

 

显然这个格式不太美观,所以我们可以先导入 moment,然后设置过滤器来获取我们想要的时间格式(红色的部分可以随意修改)

npm i moment -S
import moment from 'moment'
Vue.filter('dateFormat', function (dateStr,pattern = "YYYY-MM-DD HH:mm:ss") {
  return moment(dateStr).format(pattern);
})

之后在获取到的时间后面加上 '| dateFormat'

{{ item.date | dateFormat }}

修改后的结果:

 

 

 二、发送时间数据

博主一开始直接是用了Date.now()获取了当前的时间,并向数据库发送了这个数据,但是并没有成功,因为发送的是现在的毫秒数,格式和mysql上的datetime不一样(就算是用timestamp也会报错)

date: Date.now() // 错误!!!

下面是报错信息

 

 

 

 

 

 所以我们需要用别的方法,同样也是使用moment(找了好久才找到的orz)

date: moment().format('YYYY-MM-DD HH:mm:ss')

ps:如果想要发送UTC时间,直接在中间加入utc就行了

date: moment().utc().format('YYYY-MM-DD HH:mm:ss')

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM