iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue.js中如何使用过滤器
  • 984
分享到

Vue.js中如何使用过滤器

2024-04-02 19:04:59 984人浏览 泡泡鱼
摘要

vue.js中如何使用过滤器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。过滤器是一个通过输入数据,能够及时对数据进行处理并返

vue.js中如何使用过滤器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

过滤器是一个通过输入数据,能够及时对数据进行处理并返回一个数据结果的简单函数。Vue有很多很便利的过滤器,过滤器通常会使用管道标志 “ | ”, 比如:

{{ msg | capitalize }}
// 'abc' => 'ABC'

uppercase过滤器 : 将输入的字符串转换成大写字母的过滤器。

Vuejs允许你链式调用过滤器,简单的来说,就是一个过滤器的输出成为下一个过滤器的输入,然后再次过滤。接下来,我们可以想象一个比较简单的例子,使用了Vue的 filterBy + orderBy 过滤器来过滤所有商品products。过滤出来的产品是属于水果类商品。

filterBy过滤器 : 过滤器的值必须是一个数组,filterBy + 过滤条件。过滤条件是:'string || function'+ in 'optionKeyName'

orderBy过滤器 : 过滤器的值必须是一个数组,orderBy + 过滤条件。过滤条件是:'string || array ||function' + 'order ≥ 0 为升序 || order < 0 为降序'

接下来,我们可以看下下面这个例子:我们有一个商品数组products,我们希望遍历这个数组,并把他们打印成一张清单,这个用v-for很容易实现。

<ul class="product">
  <li v-for="product in products|filterBy '水果' in 'cateGory' |orderBy 'price' 1">
    {{product.name}}-{{product.price | currency}}
  </li>
</ul>

上面的例子,就是用filterBy 过滤在 'category'中含有'水果' 关键字的列表,返回的列表就是只含有 '水果' 关键字的列表,而orderBy过滤器是根据价格做了一个升序,如果想要降序,只需要加一个小于0的参数;

自定义过滤器

虽然VueJs给我们提供了很多强有力的过滤器,但有时候还是不够。值得庆幸的,Vue给我们提供了一个干净简洁的方式来定义我们自己的过滤器,之后我们就可以利用管道 “ | ” 来完成过滤。

定义一个全局的自定义过滤器,需要使用Vue.filter()构造器。这个构造器需要两个参数。

Vue.filter() Constructor Parameters:

1.filterId: 过滤器ID,用来做为你的过滤器的唯一标识;

2.filter function: 过滤器函数,用一个function来接收一个参数,之后再将接收到的参数格式化为想要的数据结果。

上面的例子中,我们要实现商品价格打5折该怎么做呢?其实就是实现的一个自定义的过滤器,表示将商品的价格打了5折;而要实现它,需要完成的是:

a、使用Vue.filter()构造器创建一个过滤器叫做discount

b、输入商品的原价,能够返回其打五折之后的折扣价

代码见下面:

Vue.filter('discount', function(value) {
  return value * .5;
});
var product = new Vue({
  el: '.product',
  data: {
    products: [
      {name: '苹果',price: 25,category: "水果"}, 
      {name: '香蕉',price: 15,category: "水果"}, 
      {name: '雪梨',price: 65,category: "水果"}, 
      {name: '宝马',price: 2500,category: "汽车"},
      {name: '奔驰',price: 10025,category: "汽车"}, 
      {name: '柑橘',price: 15,category: "水果"}, 
      {name: '奥迪',price: 25,category: "汽车"}
    ]
  },
})

现在就可以像使用Vue自带的过滤器一样使用自定义过滤器了

<ul class="product">
  <li v-for="product in products|filterBy '水果' in 'category' |orderBy 'price' 0">
    {{product.name}}-{{product.price|discount | currency}}
  </li>
</ul>

上面代码实现的商品打5折,而如果要实现价格打任意折扣呢?应该在discount过滤器里增加一个折扣数值参数,改造一下我们的过滤器。

 Vue.filter('discount', function(value, discount) {
  return value * (discount / 100);
});

然后重新调用我们的过滤器

 <ul class="product">
  <li v-for="product in products|filterBy '水果' in 'category' |orderBy 'price' 0">
    {{product.name}}-{{product.price|discount 25 | currency}}
  </li>
</ul>

我们也可以在我们Vue实例里构造我们的过滤器,这样构造的好处是,这样就不会影响到其他不需要用到这个过滤器的Vue实例。


var product = new Vue({
  el: '.product',
  data: {
    products: [
      {name: '苹果',price: 25,category: "水果"}, 
      {name: '香蕉',price: 15,category: "水果"}, 
      {name: '雪梨',price: 65,category: "水果"}, 
      {name: '宝马',price: 2500,category: "汽车"},
      {name: '奔驰',price: 10025,category: "汽车"}, 
      {name: '柑橘',price: 15,category: "水果"}, 
      {name: '奥迪',price: 25,category: "汽车"}
    ]
  },
  //自定义在实例
  filters: {
    discount: function(value, discount) {
      return value * (discount / 100);
    }
  }
})

定义在全局就能在所有的实例中调用过滤器,如果定义在了实例里就在实例里调用过滤器。 

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网JavaScript频道,感谢您对编程网的支持。

--结束END--

本文标题: Vue.js中如何使用过滤器

本文链接: https://www.lsjlt.com/news/72033.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue.js中如何使用过滤器
    Vue.js中如何使用过滤器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。过滤器是一个通过输入数据,能够及时对数据进行处理并返...
    99+
    2024-04-02
  • Vue.js的过滤器怎么使用
    这篇文章主要介绍了Vue.js的过滤器怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue.js的过滤器怎么使用文章都会有所收获,下面我们一起来看看吧。一、过滤器作用过滤器用于进行文本内容格式化处理。二...
    99+
    2023-06-29
  • vue.js中过滤器怎么用
    这篇文章给大家分享的是有关vue.js中过滤器怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言大家再使用vue做项目时,查询功能当然必不可少,这就得使用vue强大的fil...
    99+
    2024-04-02
  • vue中过滤器如何使用
    这篇文章主要介绍“vue中过滤器如何使用”,在日常操作中,相信很多人在vue中过滤器如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue中过滤器如何使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-29
  • jQuery如何使用过滤器过滤多属性
    这篇文章给大家分享的是有关jQuery如何使用过滤器过滤多属性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用过滤器过滤多属性//This precision-based approache...
    99+
    2023-06-27
  • Vue 中filters过滤器如何使用
    这篇文章给大家介绍Vue 中filters过滤器如何使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、示例代码采用vue单文件组件,使用moment插件格式化日期<templ...
    99+
    2024-04-02
  • Vue中如何使用filters过滤器
    这篇文章主要为大家展示了“Vue中如何使用filters过滤器”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue中如何使用filters过滤器”这篇文章吧。Vue.js 允许我们自定义过滤器,...
    99+
    2023-06-29
  • vue如何使用过滤器
    在vue中使用过滤器的方法:1.新建vue.js项目;2.使用import方法引入filter过滤器;3.全局注册过滤器;4.执行命令直接引用;具体步骤如下:首先,在vue-cli中创建一个vue.js项目;vue create proje...
    99+
    2024-04-02
  • VUE中的filters过滤器如何使用
    这篇文章主要讲解了“VUE中的filters过滤器如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“VUE中的filters过滤器如何使用”吧!前言Vue.js 允许我们自定义过滤器,可...
    99+
    2023-06-29
  • 如何使用vue过滤器filter
    目录概述定义过滤器过滤器的使用自定义全局过滤器局部过滤器注意事项示例一(局部过滤器)示例二(全局过滤器)概述 在 vue2.0 之前,是有内置过滤器的,在2.0中已经没有内置的过滤器...
    99+
    2024-04-02
  • 如何使用Filter过滤器中访问getSession()
    本篇内容介绍了“如何使用Filter过滤器中访问getSession()”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Filter过滤器中访...
    99+
    2023-06-26
  • redis如何使用布隆过滤器
    布隆过滤器2个基本指令是bf.add和bf.exists,如果想要一次添加多个,就需要用到bf.madd 指令,同样如果需要一次查询多个元素是否存在,就需要用到bf.mexists 指令,基本使用如下:127.0.0.1:6379>&...
    99+
    2024-04-02
  • 详解SpringBoot中如何使用布隆过滤器
    目录前言一、Guava 实现布隆过滤器二、Hutool 布隆过滤器三、Redission 布隆过滤器四、小结五、Guava 布隆过滤器结合 Redis 使用昨天写了一篇Redis布隆...
    99+
    2024-04-02
  • 网关Gateway过滤器如何使用
    这篇“网关Gateway过滤器如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“网关Gateway过滤器如何使用”文章吧...
    99+
    2023-07-02
  • Vue中的过滤器如何声明与使用
    这篇文章主要讲解了“Vue中的过滤器如何声明与使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue中的过滤器如何声明与使用”吧!一、什么是过滤器过滤器提供给我们的一种数据处理方式。过滤器...
    99+
    2023-07-05
  • Vue.js 的过滤器你了解多少
    目录一、过滤器作用二、过滤器的使用方式三、过滤器的分类四、全局过滤器五、局部过滤器 六、全局过滤器和局部过滤器重名现象总结一、过滤器作用 过滤器用于进行文本内容格式化处理。...
    99+
    2024-04-02
  • ASP.NET MVC授权过滤器如何使用
    这篇文章主要介绍“ASP.NET MVC授权过滤器如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ASP.NET MVC授权过滤器如何使用”文章能帮助大家解决问题。过滤器过...
    99+
    2023-06-29
  • Java过滤器Filter如何使用教程
    这篇“Java过滤器Filter如何使用教程”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java过滤器Filter如何使用...
    99+
    2023-07-05
  • springboot中使用过滤器,jsoup过滤XSS脚本详解
    目录springboot使用过滤器,jsoup过滤XSS脚本1.把可能包含脚本的参数位置分析一下2.分析实现过程3.代码实现过程使用jsoup防止XSS攻击springboot使用过...
    99+
    2024-04-02
  • 如何正确的使用Shell过滤器
    如何正确的使用Shell过滤器?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。常用的被作为过滤器使用的命令如下所示:命令说明awk用于文本处理的解释性程序设计语言...
    99+
    2023-06-06
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作