Vue定义全局过滤器filter
这里介绍的是多个过滤器一起添加到全局中
1.创建方法
首先src下新建plugin文件夹,用来存放插件。
在plugin文件夹内新建filters.js,编写方法(如隐藏手机号码等等...)
/**
* 隐藏手机号码
* @param val {Number, String} 转换的字符串对象
* @param retain {Number} 保留位数
* @return {String}
*/
export privatePhone = function(val,retain = 4){
if(!NUMBER(val) || String(val).length !== 11 || retain==0 ) return val;
let phone = String(val)
let digit = 11 - 3 - retain
let reg = new RegExp(`^(\\d{3})\\d{${digit}}(\\d{${retain}})$`)
return mobile.replace(reg,`$1${'*'.repeat(digit)}$2`)
}
2.添加到Vue全局中
在main.js中引入,添加
import * as filters from './plugins/filters.js'
Object.keys(filters).forEach(key=>{
Vue.filter(key,filters[key])//插入过滤器名和对应方法
})
3.使用
使用方法有两种
a.在双花括号插值(用的较多)
{{ phone | privatePhone }}
b.在v-bind表达式中使用
<div v-bind:data=" phone | privatephone "></div>
PS:
参数的写法:上述代码中privatePhone的第一个参数即是phone
详细的大家可以看这:
https://www.jianshu.com/p/ad21df1914c5
Vue定义全局过滤器filter的更多相关文章
- vue定义全局date过滤器(自定义JS文件模块和Moment.js库)
自定义dateFormat.js文件模块 dateFormat.js /** * 时间字符串 转 时间戳 * @param {String} time_str 时间字符串(格式"2014-0 ...
- 黑马vue---28、vue中全局过滤器的基本使用
黑马vue---28.vue中全局过滤器的基本使用 一.总结 一句话总结: vue中的过滤器可以传递参数(根据参数来过滤),也可以用管道符拼接多个过滤器:例如<p>{{ msg | msg ...
- vue 定义全局函数,监听android返回键事件
vue 定义全局函数,监听android返回键事件 方法一:main.js 注入(1)在main.js中写入函数Vue.prototype.changeData = function (){ aler ...
- Vue中全局过滤器期与局部过滤器期的使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue定义全局方法 调用其他组件的方法
官网的写法 vue实例.$on就可以在根实例上定义全局方法 this.$root就是获取根实例 如果没有根实例 就表示当前实例 this.$root.$on 不需要.eventHub 不需要下面这 ...
- 第二章 Vue快速入门-- 24 过滤器-Vue中全局过滤器的基本使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- vue注册全局过滤器
1.src目录下创建filter文件 /** * 男女 * @param val * @returns {string} */ const status = val => { let name ...
- vue定义全局组件
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...
- vue 定义全局函数
方法一:main.js 注入 (1)在main.js中写入函数 Vue.prototype.changeData = function (){ alert('执行成功'); } (2)在所有组件里可调 ...
随机推荐
- 使用IDEA操作Hbase API 报错:org.apache.hadoop.hbase.client.RetriesExhaustedException的解决方法:
使用IDEA操作Hbase API 报错:org.apache.hadoop.hbase.client.RetriesExhaustedException的解决方法: 1.错误详情: Excepti ...
- Linux上通过docker方式安装mysql
centos版本信息: docker版本信息 mysql版本:5.7 1.docker方式安装 首先拉取mysql镜像:docker pull mysql:5.7 查看本地的mysql镜像 执 ...
- Convert JS object to JSON string
Modern browsers (IE8, FF3, Chrome etc.) have native JSON support built in (Same API as with JSON2). ...
- eureka和zookeeper注册中心的区别
ookeeper与Eureka区别 CPA理论:一个分布式系统不可能同时满足C(一致性).A(可用性)和P(分区容错性).由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡. ...
- Jmeter 注册多个用户 之 CSV Data set Config
1. 打开Jmeter,新建一个测试计划 > 新建线程组> 创建一个Http 请求 2. 创建一个信息头管理器 > content-Type application/json; ...
- Redis这些知识你知道吗?
1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Redis的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库 ...
- Linux上的软件安装有哪些方式?
Linux上的软件安装有以下几种常见方式介绍 1.二进制发布包 软件已经针对具体平台编译打包发布,只要解压,修改配置即可 2.RPM包 软件已经按照redhat的包管理工具规范RPM进行打包发布,需要 ...
- Matlab——m_map指南(2)
3.海岸线和深度测量 3.1.1 海岸线选项 m_coast('line', ...optional line arguments ); m_coast('line', ...optional lin ...
- PTA数据结构与算法题目集(中文) 7-18
PTA数据结构与算法题目集(中文) 7-18 7-18 银行业务队列简单模拟 (25 分) 设某银行有A.B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗 ...
- 【前端】HTML总结
一. HTML介绍:---------------------------------------1. 什么是HTML? 超文本标记语言, <标签名>--标记(标签.节点) 2. ...