vue定义全局date过滤器(自定义JS文件模块和Moment.js库)
自定义dateFormat.js文件模块
dateFormat.js/**
* 时间字符串 转 时间戳
* @param {String} time_str 时间字符串(格式"2014-07-10 10:21:12")
* @returns {Number} 10位数的时间戳(秒值:1404958872000)
*/
const toTimestamp = time_str => +new Date(time_str) / 1000 /**
* 时间戳 转 时间字符串
* @param {Number} time_stamp 10位数的时间戳(秒值:1404958872)
* @returns {String} 时间字符串 (格式"2014-07-10 10:21:12")
*/
const toTimestr = time_stamp => {
const time = new Date(time_stamp * 1000);
const Y = time.getFullYear()
const M = (time.getMonth() + 1).toString().padStart(2, '0')
const D = time.getDate().toString().padStart(2, '0')
const h = time.getHours().toString().padStart(2, '0')
const m = time.getMinutes().toString().padStart(2, '0')
const s = time.getSeconds().toString().padStart(2, '0')
return `${Y}/${M}/${D} ${h}:${m}:${s}`
} export { toTimestamp, toTimestr}
vue项目的main.js文件中全局注册// 定义全局过滤器
import * as filters from "./dateFormat";
Object.keys(filters).forEach(key => {
Vue.filter(key, filters[key])
})
JavaScript 日期处理类库Moment.js
vue项目的main.js文件中全局注册的两种形式第一种
// 引入JavaScript 日期处理类库(格式化)
import moment from "moment";
// moment.locale('zh-cn') // 汉化 /**
* 全局挂载(适用于script标签中的js代码格式化时间)
* 使用方式:this.$moment(时间).format('时间格式')
*/
Vue.prototype.$moment = moment;
第二种
/**
* 注册为全局过滤器(适用于template标签中的html代码 => 插值表达式和v-bind属性绑定)
* 使用方式:<span>{{ 时间 | formatDate('时间格式') }}</span>
* @parms { String } formatStr 时间格式:"Y-M-D h:m:s"
* @parms { any } data 时间:可以是时间戳,也可以是其他形式的时间,比如2019/8/14
* 时间戳要求是毫秒值,如果是秒值,需要在过滤前 * 1000变为毫秒值
* <span> {{ 1111111111 * 1000 | formatDate('Y-M-D h:m:s') }} </span>
* 'hh:mm:ss'是十二小时制时间,'HH:mm:ss'是二十四小时制时间
*/
Vue.filter('formatDate', function (date: any, formatStr: string) {
return moment(date).format(formatStr)
})
vue定义全局date过滤器(自定义JS文件模块和Moment.js库)的更多相关文章
- vue 定义全局函数,监听android返回键事件
vue 定义全局函数,监听android返回键事件 方法一:main.js 注入(1)在main.js中写入函数Vue.prototype.changeData = function (){ aler ...
- webstorm创建js文件时自动生成js注释
设置webstorm创建js文件时自动生成js注释 settings--Editor--File and Code Temlates 黑色框框里的内容自己填写上去,以下是参考的代码块: /** * @ ...
- php大力力 [028节] 如何下载js文件,网上一个*.js无法下载啊??????
php大力力 [028节] 如何下载js文件,网上一个*.js无法下载啊?????? safari也无法下载 迅雷也无法下载 是不是对方网站服务器的不让下载那个js目录的文件??? 只能调用js函数啊 ...
- 动态加载JS文件,并根据JS文件的加载状态来执行自己的回调函数
动态加载JS文件,并根据JS文件的加载状态来执行自己的回调函数, 在很多场景下,我们需要在动态加载JS文件的时候,根据加载的状态来进行后续的操作,需要在JS加载成功后,执行另一方法,这个方法是依托在加 ...
- Js文件中调用其它Js函数的方法
在项目开发过程中,也许你会遇这样的情况.在某一Js文件中需要完成某一功能,但这一功能的大部分代码在另外一个Js文件中已经完成了,自己只需要调用这个方法再加上几句代码就可以实现所需的功能.我们知道,在h ...
- js文件中引用其他js文件
这一个功能的作用是做自己的js包时,可以通过引入一个整体的js文件而引入其他js. 只需要在总体的js加上这一句话 document.write("<script type='text ...
- vue 中全局filter过滤器的配置及使用
在项目中使用到的经常用到过滤器,比如时间,数据截取等过滤器,如果在每个.vue中都可以复制同一个过滤器,这可以达到目的,但是遇到方法有bug时就需要诸葛修改进入不同的页面修改,这样既费时又费力,优先可 ...
- vue 定义全局函数
方法一:main.js 注入 (1)在main.js中写入函数 Vue.prototype.changeData = function (){ alert('执行成功'); } (2)在所有组件里可调 ...
- vue 定义全局函数和变量
背景 最近我在整一个网站,介绍一些有意思的网站和实用工具的网站并且把他们收集起来,网站刚建有些不成熟希望给点意见 我用的是前端框架的vue, 但是我没有打包,直接甩到服务器上了, 不想扯了, 步骤 1 ...
随机推荐
- 手把手教你打造一款轻量级canvas渲染引擎
背景 当我们开发一个canvas应用的时候,出于效率的考量,免不了要选择一个渲染引擎(比如PixiJS)或者更强大一点的游戏引擎(比如Cocos Creator.Layabox). 渲染引擎通常会有S ...
- Java中真的只有值传递么?
Java中真的只有值传递么? (本文非引战或diss,只是说出自己的理解,欢迎摆正心态观看或探讨) 回顾值传递和引用传递 关于Java是值传递还是引用传递,网上有不一样的说法. 1.基本类型或基本类型 ...
- 【JPA】映射
[JPA]映射 转载:https://www.cnblogs.com/yangchongxing/p/10120447.html 1.@Entity注解指定实体类 2.@Id注解指定实体主键 3.@T ...
- cookie与session django中间件
目录 一.什么是cookie 二.django中操作cookie 2.1 如何操作cookie 2.2 操作cookie 三.什么是session 四.django中操作session 4.1 创建c ...
- vue+element 中 el-input框 限制只能输入数字及一位小数
仅个人经验,希望能帮到有需要的人. 第一次写 就话不多说了直接上代码. <el-input @keyup.native="proving(index)" v-model=&q ...
- Linux重器之 Vim 实用命令
Vim 常用的命令 光标定位; hjkl 上下左右移动 0 $ 跳到行首或行尾 gg shift+G 跳到整个文件的开头行或者结尾行 1G ,2G,3G........NG ,跳到第1.2.3 ...
- linux 文件管理命令
一,文件查看more,less,head,tail,cat,tac 分屏查看文件内容 more:和man用法一样,但翻屏到尾部自动推出. less:和man用法一样. head:查看文件的前n行.n默 ...
- 利用keras自带路透社数据集进行多分类训练
import numpy as np from keras.datasets import reuters from keras import layers from keras import mod ...
- webpack安装错误 ‘webpack : 无法加载文件’
- 树上前k大的包含不重复结点的长链
一棵树,不一定是二叉树,在每个结点最多只属于一条链的情况下,处理出其中最长的前k个的长度. 最近训练赛做到两道题了,有必要总结一下. 不过我不知道是否有更专门的叫法. 借鉴了这位大佬的博客:https ...