自定义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库)的更多相关文章

  1. vue 定义全局函数,监听android返回键事件

    vue 定义全局函数,监听android返回键事件 方法一:main.js 注入(1)在main.js中写入函数Vue.prototype.changeData = function (){ aler ...

  2. webstorm创建js文件时自动生成js注释

    设置webstorm创建js文件时自动生成js注释 settings--Editor--File and Code Temlates 黑色框框里的内容自己填写上去,以下是参考的代码块: /** * @ ...

  3. php大力力 [028节] 如何下载js文件,网上一个*.js无法下载啊??????

    php大力力 [028节] 如何下载js文件,网上一个*.js无法下载啊?????? safari也无法下载 迅雷也无法下载 是不是对方网站服务器的不让下载那个js目录的文件??? 只能调用js函数啊 ...

  4. 动态加载JS文件,并根据JS文件的加载状态来执行自己的回调函数

    动态加载JS文件,并根据JS文件的加载状态来执行自己的回调函数, 在很多场景下,我们需要在动态加载JS文件的时候,根据加载的状态来进行后续的操作,需要在JS加载成功后,执行另一方法,这个方法是依托在加 ...

  5. Js文件中调用其它Js函数的方法

    在项目开发过程中,也许你会遇这样的情况.在某一Js文件中需要完成某一功能,但这一功能的大部分代码在另外一个Js文件中已经完成了,自己只需要调用这个方法再加上几句代码就可以实现所需的功能.我们知道,在h ...

  6. js文件中引用其他js文件

    这一个功能的作用是做自己的js包时,可以通过引入一个整体的js文件而引入其他js. 只需要在总体的js加上这一句话 document.write("<script type='text ...

  7. vue 中全局filter过滤器的配置及使用

    在项目中使用到的经常用到过滤器,比如时间,数据截取等过滤器,如果在每个.vue中都可以复制同一个过滤器,这可以达到目的,但是遇到方法有bug时就需要诸葛修改进入不同的页面修改,这样既费时又费力,优先可 ...

  8. vue 定义全局函数

    方法一:main.js 注入 (1)在main.js中写入函数 Vue.prototype.changeData = function (){ alert('执行成功'); } (2)在所有组件里可调 ...

  9. vue 定义全局函数和变量

    背景 最近我在整一个网站,介绍一些有意思的网站和实用工具的网站并且把他们收集起来,网站刚建有些不成熟希望给点意见 我用的是前端框架的vue, 但是我没有打包,直接甩到服务器上了, 不想扯了, 步骤 1 ...

随机推荐

  1. 浅析Java常量池

    Java常量池 Java常量池其实分为两种:静态常量池和运行时常量池 1.静态常量池 所谓静态常量池,即*.class文件中的常量池,class文件中的常量池不仅仅包含字符串(数字)字面量,还包含类. ...

  2. JS四种判断数据类型的方法:typeof、instanceof、constructor、Object.prototype.toString.call()

    1.typeof 1 console.log(typeof ""); //string 2 console.log(typeof 1); //number 3 console.lo ...

  3. 【hibernate】重写物理表名和列明

    [hibernate]重写物理表名和列明 转载:https://www.cnblogs.com/yangchongxing/p/10357123.html 假设你的数据库命名有这样的需求,表都以 yc ...

  4. 基于 HTML5 WebGL 构建智能数字化城市 3D 全景

    前言 自 2011 年我国城镇化率首次突破 50% 以来,<新型城镇化发展规划>将智慧城市列为我国城市发展的三大目标之一,并提出到 2020 年,建成一批特色鲜明的智慧城市.截至现今,全国 ...

  5. Enumeration接口和Iterator接口的区别有哪些?

    Enumeration速度是Iterator的2倍,同时占用更少的内存.但是,Iterator远远比Enumeration安全,因为其他线程不能够修改正在被iterator遍历的集合里面的对象.同时, ...

  6. Java中接口和抽象类的区别?

    抽象类 抽象类必须用 abstract 修饰,子类必须实现抽象类中的抽象方法,如果有未实现的,那么子类也必须用 abstract 修饰.抽象类默认的权限修饰符为 public,可以定义为 public ...

  7. tomcat session共享

    1.版本 redis3.2   nginx   tomcat8.5 2.下载jar包  tomcat-cluster-redis-session-manager 解压后大家可以看看 readMe.tx ...

  8. android开发检测用户是否使用了虚拟定位

    在应用开发中,如果有签到打卡之类的功能,你是否会遇到检测用户是否使用了虚拟定位软件来进行打卡?如果有,那么请仔细阅读这篇文章.该文章会带你认识什么是虚拟定位.什么是应用分身,以及如何通过代码来检测用户 ...

  9. linux指令-date

    1.在linux中要显示日期,则可以直接输入指令date 2.如果想以这样2016/12/26的方式输出呢,那就是,Y是年份,m是月份,d是日 date +%Y/%m/%d 3.如果要显示时间,则da ...

  10. 程序员offer沟通的4个基本原则

     常柱 架构未来  你需要就一份新工作进行沟通时:比如你的薪水.福利,或者我个人最喜欢的每周工作时间缩短等,当公司问你“你想要多少?”或者“这是我们的报价,你说呢?” 最后关于薪资的谈话可能是最伤脑筋 ...