vue.js(12)--过滤器

vue中的全局过滤器与定义私有过滤器

全局过滤器

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>过滤器</title>
    <script src="../lib/vue.js"></script>
</head>
<body>
    <div class="app">
        <p>{{ msg | myFormat('哈哈哈哈哈') }}</p>
    </div>
    <script>
        Vue.filter('myFormat',function(msg,n) {
            
            return msg.replace(//g,n)
        })
        var vm = new Vue({
            el:'.app',
            data:{
                msg:'我是天下第一帅,我是天下第一美丽,我是天下第一可爱'
            }
        })
    </script>
</body>
</html>

通过vue.filter('过滤器名称',function(参数){过滤方式,返回过滤后值})的方式定义一个全局过滤器。

使用过滤器的方式格式是{{ 要处理的字符 | 过滤器的名称}}

replace(‘替换字符’,‘被替换字符’)方法的使用

定义私有过滤器

<script>
var vm= new Vue({  //创建vue实例
            el:'.app',
            data:{
                arr:[
                    {'id':1,'name':'iPhone','time':new Date()},
                    {'id':2,'name':'华为','time':new Date()},
                    {'id':3,'name':'OPPO','time':new Date()}
                ], //创建一些初始数据与格式
                id:'',
                name:'',
                keywords:''  //初始化参数keywords为空
            },
            directives:{
                focus:{
                    inserted:function(el) {
                        el.focus()
                    }
                }
            },//自定义指令
            filters:{
                timeFormat:function (dataStr) {
                    var myData=new Date(dataStr)
                    var y=myData.getFullYear()
                    var m=(myData.getMonth() + 1).toString().padStart(2,'0')
                    var d=myData.getDate().toString().padStart(2,'0')
                    var h=myData.getHours().toString().padStart(2,'0')
                    var mm=myData.getMinutes().toString().padStart(2,'0')
                    var s=myData.getSeconds().toString().padStart(2,'0')
                    return `${y}-${m}-${d} ${h}:${mm}:${s}++++++`
                }
            }//******创建一个私有过滤器******/
        })
</script>

自定义私有过滤器形式:fliters:{过滤器名称:function (){}}

padStart方法在头部填充字符(字符串独有)实例、:时间字符串填充0

padEnd方法在尾部填充字符串

猜你喜欢

转载自www.cnblogs.com/qiqisusu/p/11359643.html