服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - vue 将多个过滤器封装到一个文件中的代码详解

vue 将多个过滤器封装到一个文件中的代码详解

2021-09-15 16:59胡兴朝 JavaScript

这篇文章主要介绍了vue 将多个过滤器封装到一个文件中实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

在这里只简单探讨关于如何将vue过滤器封装到一个文件当中,当然可以封装多个不同类型的过滤器,然后可以在需要使用过滤器的文件当中进行复用,非常的方便。
1.
首先是文件结构,首先涉及到 filters.vue (引用过滤器的文件)

vue 将多个过滤器封装到一个文件中的代码详解

文件代码:

  1. <template>
  2. <div class="chart-container">
  3. <ul>
  4. <li v-for="texts in text" >{{texts | MoneyFormat}}</li>
  5. </ul>
  6. </div>
  7. </template>
  8.  
  9. <script>
  10. import filter from '../filters/index'
  11.  
  12. export default {
  13. data() {
  14. return {
  15. text: ['holle','sdfs','fuck']
  16. };
  17. },
  18. };
  19. </script>

然后是用来封装过滤器的文件 filters下的index.js文件:

vue 将多个过滤器封装到一个文件中的代码详解

文件代码:

  1. //vue定义全局过滤器
  2.  
  3. //第一个过滤器:用来将单词的首字母变成大写
  4. let MoneyFormat = value => {
  5. if (value) {
  6. let str = value.toString();
  7. //获取英文,以空格分组把字符串转为数组,遍历每一项,第一项转为大写字母
  8. let newArr = str.split(" ").map(ele => {
  9. console.log(ele.slice(1))
  10. return ele.charAt(0).toUpperCase() + ele.slice(1)
  11. });
  12. return newArr.join(" ")
  13. }
  14.  
  15. }
  16.  
  17. //第二个过滤器:用来将字符串'22'添加到字母后面
  18. let timeFilter = function (value) {
  19. return value + "22"
  20. }
  21.  
  22. //暴露这两个过滤器
  23. export { MoneyFormat,timeFilter }

最后就是在main.js文件当中引入全局过滤器:

vue 将多个过滤器封装到一个文件中的代码详解

文件代码:

  1. //全局过滤器
  2. import * as filters from './filters/index'
  3. Object.keys(filters).forEach(key => {
  4. Vue.filter(key, filters[key])
  5. })

2.

最后附上文件结构图:

vue 将多个过滤器封装到一个文件中的代码详解

总结

到此这篇关于vue 将多个过滤器封装到一个文件中的文章就介绍到这了,更多相关vue过滤器封装文件中内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_44283571/article/details/108388824

延伸 · 阅读

精彩推荐