vue中filters 传入两个参数 / 使用两个filters的实现方法


Posted in Javascript onJuly 15, 2019

先给大家介绍下vue中filters 传入两个参数 / 使用两个filters

.vue

传入两个参数

<van-col>{{第一个参数|formatVisitTime(第二个参数)}}</van-col>

使用两个filters

<van-tag plain :color="item.CreateTime(参数)|formatVisitDate(filters方法)|formatVisitDateColor(filters方法)">{{item.CreateTime|formatVisitDate}}</van-tag>

format.js

export const formatVisitTime = (beginTime, finishTime) => {
  if (!beginTime) {
    return "--";
  }
  if (!finishTime) {
    return formatDateTime(beginTime, 'hh:mm:ss')
  }
  beginTime = new Date(beginTime);
  finishTime = new Date(finishTime);
  let mss = Math.abs(beginTime.getTime() - finishTime.getTime());
  let hours = Math.floor(mss / (1000 * 60 * 60));
  let minutes = Math.floor((mss % (1000 * 60 * 60)) / (1000 * 60));
  return hours + "小时" + minutes + "分钟";
}

.ts

import format from "@/plugins/format";
@Component({
 filters: {
  formatVisitTime(beginTime, finishTime) {
   return format.formatVisitTime(beginTime, finishTime);
  }
 }
})

ps:下面看下Vue 中的 filter 带多参

场景

在 vue 项目中,团队成员在模板中解析一个 json 字符串,然后这个字符串来自于后台,所以是类型不安全,直接用 JSON.parse 就报错了,这里需要用 trycatch 下。

实际是,因为这个解析 json 字符串的方法是纯函数,且经常用在模板中,所以作为 filter 合适,直接拷贝了其他项目的这个方法过来作为 fitlers 用,如下。

// omit other properties
 filters: {
  tryParseJsonString(jsonStr, defaultValue) {
   let ret = defaultValue;
   if (jsonStr) {
    try {
     ret = JSON.parse(jsonStr) || defaultValue;
    } catch (e) {
     console.warn('JSON格式不正确,解析失败', e.message);
    }
   }

   return ret;
  }
 },
// ...

在模板中,可以绑定到 v-bind,使用如下

<template>
 <comp :images="li.value | tryParseJsonString([])" />
</template>

考虑到这个 filter 使用频繁,所以可以封装进全局 mixin,避免频繁的引用。

参考 https://vuejs.org/v2/guide/fi...

总结

以上所述是小编给大家介绍的vue中filters 传入两个参数 / 使用两个filters的实现方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
多种方式实现JS调用后台方法进行数据交互
Aug 20 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
Aug 27 Javascript
javascript删除元素节点removeChild()用法实例
May 26 Javascript
readonly和disabled属性的区别
Jul 26 Javascript
第三章之Bootstrap 表格与按钮功能
Apr 25 Javascript
Bootstrap学习笔记之环境配置(1)
Dec 07 Javascript
利用js+css+html实现固定table的列头不动
Dec 08 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
Aug 06 Javascript
浅谈Node异步编程的机制
Oct 18 Javascript
浅谈webpack 自动刷新与解析
Apr 09 Javascript
JS基础之逻辑结构与循环操作示例
Jan 19 Javascript
Java 生成随机字符的示例代码
Jan 13 Javascript
微信小程序全局变量改变监听的实现方法
Jul 15 #Javascript
vue draggable resizable 实现可拖拽缩放的组件功能
Jul 15 #Javascript
微信小程序如何使用canvas二维码保存至手机相册
Jul 15 #Javascript
如何给element添加一个抽屉组件的方法步骤
Jul 14 #Javascript
详解vuex的简单todolist例子
Jul 14 #Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
Jul 13 #Javascript
微信小程序解析富文本过程详解
Jul 13 #Javascript
You might like
基于php iconv函数的使用详解
2013/06/09 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
在WordPress中实现发送http请求的相关函数解析
2015/12/29 PHP
php session的锁和并发
2016/01/22 PHP
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
2016/11/12 PHP
php中10个不同等级压缩优化图片操作示例
2016/11/14 PHP
基于PHP实现短信验证码发送次数限制
2020/07/11 PHP
javascript suggest效果 自动完成实现代码分享
2012/02/17 Javascript
JavaScript子窗口ModalDialog中操作父窗口对像
2012/12/11 Javascript
Javascript级联下拉菜单以及AJAX数据验证核心代码
2013/05/10 Javascript
分享20款美化网站的 jQuery Lightbox 灯箱插件
2014/10/10 Javascript
json传值以及ajax接收详解
2016/05/24 Javascript
Javascript中this绑定的3种方法与比较
2016/10/13 Javascript
js给table赋值的实例代码
2016/10/13 Javascript
JS中Array数组学习总结
2017/01/18 Javascript
JavaScript函数节流和函数防抖之间的区别
2017/02/15 Javascript
Javascript ES6中数据类型Symbol的使用详解
2017/05/02 Javascript
使用JS实现导航切换时高亮显示的示例讲解
2018/08/22 Javascript
原生JS实现逼真的图片3D旋转效果详解
2019/02/16 Javascript
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
2019/03/06 Javascript
[49:59]KG vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python构造icmp echo请求和实现网络探测器功能代码分享
2014/01/10 Python
Python编程语言的35个与众不同之处(语言特征和使用技巧)
2014/07/07 Python
Python使用cx_Oracle调用Oracle存储过程的方法示例
2017/10/07 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
2018/09/14 Python
Python多线程爬取豆瓣影评API接口
2019/10/22 Python
python上传时包含boundary时的解决方法
2020/04/08 Python
10分钟入门CSS3 Animation
2018/12/25 HTML / CSS
css3中仿放大镜效果的几种方式原理解析
2020/12/03 HTML / CSS
英国Iceland杂货店:网上食品购物
2020/12/16 全球购物
过程装备与控制工程专业个人的求职信
2013/12/01 职场文书
电工技术比武方案
2014/05/11 职场文书
个人综合鉴定材料
2014/05/23 职场文书
2014中考励志标语
2014/06/05 职场文书
表扬稿表扬信的格式及范文
2019/06/24 职场文书
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python