vue中时间格式转化是怎样,有什么简单实例
Admin 2022-08-12 群英技术资讯 352 次浏览
yyyy-MM-dd HH:mm:SS,即要求月日时分秒小于两位数的都要补0,这样显得整体化一。所以下面就是专门对月日时分秒小于10时做补0的处理,实际刚开始想到的就是直接挨个判断月日时分秒<10时,直接拼接0的想法,被同事打断了,这个方法太繁琐了。所以发现了以下简洁的方法,据说是es6中的函数用法,还没有去具体查询出处,先用着再说吧。接下来分析代码.
可以把它写在一个单独的js中,这样就可以写在公共方法里,大家都可以调用的那种,当然也可以写在你需要地方的方法里,按照自己的实际情况来
① 写在公共方法里
可以在工具文件夹底下新建一个data.js,如下:
代码部门:
其中Vue.prototype是将formatDate这个方法设置问全局方法,这样就都可以调用了,注意方法名名为formatDate,后面用
/** * Created by syp on 2020/5/15. */ exports.install = function (Vue, options) { Vue.prototype.formatDate = function (row, column) { let data = row[column.property] if (data == null) { return null } let dt = new Date(data) let yyyy = dt.getFullYear() let MM = (dt.getMonth() + 1).toString().padStart(2, '0') let dd = dt.getDate().toString().padStart(2, '0') let h = dt.getHours().toString().padStart(2, '0') let m = dt.getMinutes().toString().padStart(2, '0') let s = dt.getSeconds().toString().padStart(2, '0') return yyyy + '-' + MM + '-' + dd + ' ' + h + ':' + m + ':' + s } }
处理好data.js后,再在公共js中调用一下,设置为全局的,这样大家就都可以用了
然后在vue页面进行调用图:
:formatter="formatDate"
formatDate就是设置为全局方法的方法名
② 将它只是变为局部的格式化时间调用,那么就需要把格式化时间的代码放在调用页面的方法中
一下这个方法只需要放在本页面的method底下就好了
formatDate (row, column) { let data = row[column.property] if (data == null) { return null } let dt = new Date(data) return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + dt.getHours() + ':' + dt.getMinutes() + ':' + dt.getSeconds() },
在列表展示的熟悉中运用和上面一样都用:formatter="formatDate"就ok了。
图示:
<template> <view class="content"> <view>{{date}}</view> </view> </template>
<script> export default { data() { return{ date: new Date() } }, onLoad() {}, mounted: function() { let that = this //setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式 //每一毫秒调用一次 that.timer = setInterval(function() { that.date = new Date(); }, 1000) }, beforeDestroy: function() { if (this.timer) { clearInterval(this.timer) } }, methods: { } } </script>
获得国际标准时间
通过给Vue实例添加选项filters来设置,给时间格式化处理
<template> <view class="content"> <view>{{date | formatDate}}</view> </view> </template>
<script> //一、时间转换关键 var padDate = function(value) { return value < 10 ? '0' + value : value; }; export default { //二、时间转换关键 filters: { formatDate: function(value) { var date = new Date(value); var year = date.getFullYear(); var month = padDate(date.getMonth()+1); var day = padDate(date.getDate()); var hours = padDate(date.getHours()); var minutes = padDate(date.getMinutes()); var seconds = padDate(date.getSeconds()); return year + '-' + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds } }, data() { return{ date: new Date() } }, onLoad() {}, mounted: function() { let that = this //setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式 //每一毫秒调用一次 that.timer = setInterval(function() { that.date = new Date(); }, 1000) }, beforeDestroy: function() { if (this.timer) { clearInterval(this.timer) } }, methods: { } } </script>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家介绍了网络请求方案原生网络请求和js网络请求库的过程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
jQuery跨域访问的解决方法及要点是什么?跨域访问一直都是程序员们头疼的问题,对于很多用户们来说都不知道如何解决,好在,有jquery帮忙,跨域问题似乎没那么难缠了.这次也借此机会对跨域问题来给刨根问底,结合实际的开发项目,查阅了相关资料,算是解决了跨域问题..有必要记下来备忘.
在jquery中,可以使用hasClass()方法来判断是否有某个class,该方法的作用就是检查被选元素是否包含指定的class,语法“$(selector).hasClass(classname)”。
这篇文章主要为大家详细介绍了jQuery实现表单验证功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要为大家介绍了Vue之Axios异步通信,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008