Vue入门-自定义过滤器
过滤器介绍
Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化。
过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持)。
过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示:
代码参考
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>自定义过滤器</title>
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<div id="app">
<h1>价格: {
{price | currency('¥',2)}}</h1>
<p>{
{str | capital}}</p>
</div>
</body>
</html>
<script>
// 自定义全局过滤器,第二个参数是函数
// 全局过滤器,本过滤器功能:添加货币符号,保留两位小数
Vue.filter('currency', function (val, arg1, arg2) {
// 输出的结果为: |前面的数字
console.log(val, arg1, arg2);
// toFixed()方法可把 Number 四舍五入为指定小数位数的数字。
return arg1 + val.toFixed(arg2);
});
// 注册局部过滤器
new Vue({
el: '#app',
data: {
price: 12.345,
str: 'hello'
},
// 局部过滤器,本过滤器功能:实现字符的首字符大写
filters: {
capital: function (v) {
// 实现效果: 首字母大写
// 具体做法: 字符串下标为0的字符,转化为大写;从下标为1的位置开始截取,截取后面所有的字符;最后,进行拼接.
return v[0].toUpperCase() + v.slice(1);
}
}
});
</script>
效果图
还没有评论,来说两句吧...