首页 > 编程知识 正文

vue怎么封装组件,vue filter函数的用法

时间:2023-05-05 02:21:18 阅读:49172 作者:912

33558www.Sina.com/vue中的过滤器基本上设置文本格式,并在渲染前处理和过滤数据。

语法格式:

h1{{data | filter () }}/h1注意:

1. Vue中的filters过滤器是什么?

当有局部和全局两个名称相同的过滤器时候,会以就近原则进行调用,即:局部过滤器优先于全局过滤器被调用!

在Vue中为什么要封装filters过滤器? 如果有太多页面使用同一过滤器或多个过滤器,请复制&; 这是为了避免重复粘贴来创建n个版本的代码,导致代码维护异常困难,增加服务器端的压力。

开始准备包:

如何封装全局filters过滤器:2.一个表达式可以使用多个过滤器。过滤器之间需要用管道符“|”隔开。其执行顺序从左往右

写在filters.js

范例

exportfunctionnamefilters(name ) /对名字进行过滤的jkdyl(* )三)纯情耳机;蓄胡子灯泡(if ) typeof ) name )=='undefined ' }elseif(name.length===2) return new array (name.length ).join('* ' ) name.substr )-1 ); } else { return (name.substr (0,1 ) newarray ) name.length-1 ).join('* ' ) name.substr )-1 ); } exportfunctionidcardfilters (num ) /按身份证过滤42900419902024125 (42900419 * * * * * * * 25 ) if (type of ) num )=' '=18 ) {返回编号; }else{returnnum.replace(/(d{8} ) d ) )、' $1********$2' ); } exportfunctionsexidcarefilter (num ) /根据身份证显示性别if(typeof ) num )=='undefined ' ) {returnnum; }elseif(num.length!=18 ) {返回编号; } else { return num.substr (16,1 ) %2===1? “男”:“女”} exportfunctionphonefilters (num ) /按手机号码过滤18641526389(186****6389 ) if ) type of (num )==11 ) {返回编号; }else{returnnum.replace(/(d{3} ) d{4} ) )、' $1****$2' ); }exportfunctiontextfilter(type,n ()//文本超出后再剪切if (type of (type )=='undefined' || type.length=n ) n ()…) } exportfunction pricefilter (type,n ) (/保持两位小数的if (type of (type )=='undefined ) ) returntype (relse ) //年var month=time.getMonth () 1; //月var date=time.getDate (; //日var hour=time.getHours (; //时var minutes=time.getMinutes (; //分钟var seconds=time.getSeconds (; //秒返回` $ { year }-$ { month }-$ { date } : $ { hour } : $ { minutes } 3360 $ { seconds } ` } 3358 www.sin

import * asfiltersfrom './filters/filters.js '//您创建的filters文件//全局过滤器object.keys(filters ).foreach ) keys

范例

template h1 { { title } text filter } }/h1/template

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。