关于vue中的时间格式转化问题
作者:醉梦洛 发布时间:2024-05-13 09:44:07
标签:vue,时间格式,转化
vue时间格式转化问题
1. 效果图
2. 需求:前台展示一律用的时间规格
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了。
图示:
vue转换时间格式(适用于uni-app)
1. 前端获取实时时间
<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>
获得国际标准时间
2. 运用过滤器
通过给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>
来源:https://blog.csdn.net/weixin_39921821/article/details/106300688


猜你喜欢
- 概述:本文将通过组织自己的训练数据,使用Pytorch深度学习框架来训练自己的模型,最终实现自己的图像分类!本篇文章以识别阳台为例子,进行讲
- 1. rangerange是python内置的一个类,该类型表示一个不可改变(immutable)的数字序列,常常用于在for循环中迭代一组
- HTML转PDF:1.页面底层实现——Vue:最低兼容ie102.实现思路:1> 使用html2canvas.js将网页转换为图片2&
- 本文实例为大家分享了python实现爬取图书封面的具体代码,供大家参考,具体内容如下kongfuzi.py利用更换代理ip,延迟提交数据,设
- 仿照常见的那个图片变换flash做的效果,纯js。不过滤镜变换只对应ie,ff只能看到一般的切换。这个js做的效果最早在sina看到,这里把
- 关于端口复用一个套接字不能同时绑定多个端口,如果客户端想绑定端口号,一定要调用发送信息函数之前绑定( bind )端口,因为在发送信息函数(
- asp中使用addnew方法添加一条记录后,我们经常使用取得自递增的ID,而使用bookmark很容易实现这样的功能。rs.open&nbs
- vue router路由嵌套不显示问题的解决方法,具体内容如下路由嵌套,vue2.0 router中嵌套路由不成功,如何解决?我先说下我的需
- 一、读写txt文件1、打开txt文件file_handle=open('1.txt',mode='w')上述
- 本文实例讲述了python flask框架实现重定向功能。分享给大家供大家参考,具体如下:flask 重定向:from flask impo
- 前些年,HandlerSocket的横空出世让人们眼前一亮,当时我还写了一篇文章介绍了其用法梗概,时至今日,由于种种原因,HandlerSo
- 前言大家做自动化登录时可能都遇到过滑块验证码需要手动验证的问题,这次我们就来解决他如下: 在我们做自动化登录时,总会遇到各种奇奇怪怪的验证
- python标准库包含于日期(date)和时间(time)数据的数据类型,datetime、time以及calendar模块会被经常用到。d
- python版本:3.5.4系统:win10 x64通过网页下载视频方法一:使用urllib.retrieve函数放函数只需要两个参数即可下
- 丢弃现有MySQL的表是很容易的。但是需要非常小心,删除任何现有的一个表后将无法恢复,因为数据丢失。语法:下面是通用的SQL语法丢弃(删除)
- 本文实例讲述了pymssql数据库操作MSSQL2005的方法。分享给大家供大家参考。具体如下:使用的MSSQL2005,通过pymssql
- 目录一、Python执行外部命令1、subprocess模块简介2、subprocess模块的遍历函数3、subprocess模块的Pope
- wheel文件Wheel和Egg都是python的打包格式,目的是支持不需要编译或制作的安装过程,实际上也是一种压缩文件,将.whl的后缀改
- Symfony是一个强大的基于PHP的Web开发框架,在这里我们用十分钟的时间来做一个简单的增删改查的程序, 任何不熟悉Symfony的人都
- 废话不多说了,直接给大家分享java操作sql数据库常见的连接问题。1.连接,查询,更新,关闭这几个数据基础操作,所以放到一起,写成一个工具