zoukankan      html  css  js  c++  java
  • vue学习(十六) 自定义私有过滤器 ES6字符串新方法 填充字符串

    <div id="app">
     <p>{{data | formatStr('yyyy-MM-dd')}}</p></div>
    
    //script
    <script>
      //自定义一个私有的过滤器(局部)
      var vm = new Vue({     el:'app',     data:{       msg:''     },
        method:{},
        filters:{//定义私有过滤器 过滤器有两个条件 过滤器名称和处理函数
          formatStr:function(dataStr,pattern){
            var date = new Date(dataStr)
            var y = date.getFullYear()
            // padStart()方法是ES6提供的填充字符串的方法,有两个参数 第一个是 填充完后字符串的总长度,第二个参数是用什么来填充字符串
            // 这里要做的是 月份 和 天数 如果是一位的话在前面补上0 比如:2019-02-04
            var m = (date.getMonth()+1).toString().padStart(2,'0')
            var d = (date.getDate()).toString().padStart(2,'0')
            if(pattern.toLowerCase()==='yyyy-MM-dd'){
              return `${y}-${m}-${d}`
            }else{
              var hh = date.getHours()
              var mm = date.getMinutes()
              var ss = date.getSeconds()
              return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
            }
          }
        }   })
    </script>

    注意:过滤器调用的时候,采用的是就近原则,如果私有过滤器和全局过滤器名称一致了,这时候优先调用私有过滤器

  • 相关阅读:
    在网页中象GMAIL一样检测客户端是否连接到网络
    How to adjust IFrame height on it's content (转载)
    asp.net工程中aspx文件与codebehind文件的关联问题
    一个在VC中调用web service的方法
    往mssql 表的自增长字段中添加值
    iis7上安装php5+mysql
    试用淘宝开放平台
    关于IOCP的方方面面
    Overlapped I/O
    为什么需要allocator的rebind接口
  • 原文地址:https://www.cnblogs.com/xuchao0506/p/10853407.html
Copyright © 2011-2022 走看看