Vue 中过滤器(filters)的使用方法

在这里插入图片描述

查看本专栏目录


关于作者

还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;优快云知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信,一起交流。

热门推荐内容链接
1openlayers 从基础到精通,300+代码示例
2leaflet 热门分解学习教程,150+图文示例
3cesium 从0到1学习指南,200+代码示例
4 mapboxGL 从入门到实战,150+图文示例
5canvas 示例应用100+,揭密底层细节
6javascript从基础到高级,示例展示200+
7vue2 实战指南,100+个细节深度剖析

在这里插入图片描述

Filter介绍

Vue.js 中的过滤器(Filter)是一种用于处理文本的自定义函数,可以在模板中直接使用。过滤器可以用在两个地方:双花括号插值和 v-bind 表达式过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号(|)表示

使用步骤如下:

  1. 定义过滤器:在 Vue 实例或组件的 filters 属性中定义一个函数,该函数接收一个参数(需要过滤的文本),并返回过滤后的文本。

  2. 在模板中使用过滤器:在需要使用过滤器的地方,将过滤器的名称添加到表达式后面,用管道符(|)分隔。

示例效果图

在这里插入图片描述

示例源代码

/*
* @Author: 大剑师兰特(xiaozhuanlan),还是大剑师兰特(优快云)
* @此源代码版权归大剑师兰特所有,可供学习或商业项目中借鉴,未经授权,不得重复地发表到博客、论坛,问答,git等公共空间或网站中。
* @Email: 2909222303@qq.com
* @weixin: gis-dajianshi
* @First published in 优快云
* @First published time: 2024-02-06
*/

<template>
	<div class="djs-box">
		<div class="topBox">
			<h3>vue中filters的使用方法(图文示例)</h3>
			<div>大剑师兰特, 还是大剑师兰特,gis-dajianshi</div>
		</div>
		<div class="dajianshi">
			
                      <p>变化前:{{ message}} , filter变化后:{{ message | capitalize }}</p>
                      <p>变化前:{{ price }} ,filter变化后:{{ price | currency }}</p>
                      <p>变化前:{{ date }} ,filter变化后:{{ date | formatDate }}</p>
		</div>
	</div>
</template>

<script>

	export default {
            data() {
				return{
					message: 'hello world',
					price: 1234.56,
					date: '2022-01-01'
				}

            },
            filters: {
                capitalize: function(value) {
                    if (!value) return '';
                    value = value.toString();
                    return value.charAt(0).toUpperCase() + value.slice(1);
                },
                currency: function(value) {
                    if (!value) return '';
                    return '¥' + value.toFixed(2);
                },
                formatDate: function(value) {
                    if (!value) return '';
                    return new Date(value).toLocaleDateString();
                }
            }
	}
</script>
<style scoped>
	.djs-box {
		width: 1000px;
		height: 650px;
		margin: 50px auto;
		border: 1px solid teal;
	}

	.topBox {
		margin: 0 auto 0px;
		padding: 10px 0 20px;
		background: teal;
		color: #fff;
	}

	.dajianshi {
		width: 98%;
		height: 420px;
		margin: 5px auto 0;
		border:1px solid #369;
		padding-top: 100px;
	}
    p{ font-size: 30px;}
</style>



在这个示例中,我们定义了三个过滤器:capitalize、currency 和 formatDate。capitalize 用于将文本的首字母大写;currency 用于将数字转换为人民币格式;formatDate 用于将日期字符串格式化为本地日期格式。然后在模板中,我们将这些过滤器应用到了 message、price 和 date 数据属性上,实现了相应的文本处理功能。

专栏目标

在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。

提供vue2的一些基本操作:安装、引用,模板使用,computed,watch,生命周期(beforeCreate,created,beforeMount,mounted, beforeUpdate,updated, beforeDestroy,destroyed,activated,deactivated,errorCaptured,components,)、 $root , $parent , $children , $slots , $refs , props, $emit , eventbus ,provide / inject, Vue.observable, $listeners, $attrs, $nextTick , v-for, v-if, v-else,v-else-if,v-on,v-pre,v-cloak,v-once,v-model, v-html, v-text, keep-alive,slot-scope, filters, v-bind,.stop, .native, directives,mixin,render,国际化,Vue Router等

评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

还是大剑师兰特

打赏一杯可口可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值