Vue 局部过滤器和全局过滤器
Vue 过滤器总结:
定义:对要显示的数据进行特定格式化后再显示(适用于一些简单逻辑的处理)
语法:
1、注册过滤器: Vue.filter(name,callback) 或 new Vue{filters:{}}
2、使用过滤器:{{ xxx | 过滤器名}} 或 v-bind:属性 = “xxx | 过滤器名”
备注:
1、过滤器也可以接受额外参数、多个过滤器也可以串联
2、并没有改变原本的数据,是产生新的对应的数据
其他:Boot CDN 极兔云 是一个第三方库的网站
下载:Day.js库(Day.js 是一个轻量的处理时间和日期的 JavaScript 库,和 Moment.js 的 API 设计保持完全一样. 如果您曾经用过 Moment.js, 那么您已经知道如何使用 Day.js)
案例:
1、效果图:
2、引用的javeScript库:
<script type="text/javascript" src="../js/dayjs.js"></script>
<script type="text/javascript" src="../js/vue.js"></script>
3、HTML
<body>
<!--准备一个容器-->
<div id="root" style="background-color: rgb(176, 218, 238); padding: 8px;">
<h2>显示格式化后的时间:</h2>
<!-- 计算属性实现 -->
<h3>计算属性实现 : {{fmfTime}}</h3>
<!-- methods实现 -->
<h3>methods实现 : {{getFmfTime()}}</h3>
<!-- 过滤器实现 -->
<h3>1、局部过滤器实现不带参 :{{time | timeFormater}}</h3>
<h3>2、局部过滤器实现带参 : {{time | timeFormater("YYYY年MM月DD日")}}</h3>
<h3>3、局部过滤器实现串联 : {{time | timeFormater | mySlice}}</h3>
<h3>4、全局过滤器实现串联 : {{time | timeFormater | mySlice2}}</h3>
</div>
</body>
4、javaScript
<script type="text/javascript">
Vue.config.productionTip = false Vue.filter("mySlice2",function(value){
return value.slice(0,5)
})//全局过滤器 new Vue({
el:"#root",
data:{
time:1621561377603//时间戳
},
methods:{
getFmfTime(){
return dayjs(this.time).format("YYYY年MM月DD日 HH:mm:ss")
}
},
computed:{
fmfTime(){
return dayjs(this.time).format("YYYY年MM月DD日 HH:mm:ss")
}
},
filters:{//局部过滤器
timeFormater(value,formatStr="YYYY年MM月DD日 HH:mm:ss"){
return dayjs(value).format(formatStr)
},
mySlice(value){
return value.slice(0,4)
}
}
})
</script>
视频学习:https://www.bilibili.com/video/BV1Zy4y1K7SH?p=39&spm_id_from=pageDriver&vd_source=60a28e8364654bee938864b1d19905ec
第39集
Vue 局部过滤器和全局过滤器的更多相关文章
- vue局部过滤器和全局过滤器
全局过滤器在main.js中写 //注册全局过滤器 Vue.filter('wholeMoneyFormat',(value)=>{ return '¥'+Number(value).toF ...
- Vue 项目中添加全局过滤器以及全局混合mixin
可以在.vue文件中定义局部使用的过滤器 export default{ data(){ return [] }, filters:{ toUpperCase:function(value){ ret ...
- Vue过滤器:全局过滤器
Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化. 过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持). 过滤器应该被添加在 JavaScr ...
- Vue 局部组件和全局组件的使用
<template> <div id="app"> <!--<img alt="Vue logo" src="./ ...
- Vue局部组件和全局组件
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- Vue局部注册 或者全局注册 组件时,组件定义要用 分隔命名,用驼峰命名是不生效的
Vue.component('all-canuse',{ props:['message'], template:'<div>{{message}}</div>' }) 像这样
- Vue中全局过滤器期与局部过滤器期的使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 黑马vue---28、vue中全局过滤器的基本使用
黑马vue---28.vue中全局过滤器的基本使用 一.总结 一句话总结: vue中的过滤器可以传递参数(根据参数来过滤),也可以用管道符拼接多个过滤器:例如<p>{{ msg | msg ...
- Vue 3 --安装脚手架、过滤器、生命周期的钩子函数、vue-router基本使用
一.安装脚手架 1.下载node.js,本文下载版本为node-v8.12.0-x64.msi,一键式安装. 2.安装完成后,打开终端,输入node,可进入node环境(两次ctrl+c退出),如下图 ...
- 第二章 Vue快速入门-- 26 过滤器-定义私有过滤器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
随机推荐
- 微信小程序tabBar图标显示失败问题
练习tabBar时发现链入的图片在没有任何语句语法错误以及报错的情况下显示失败 试了很多办法 最后请教了一下学长才知道需要重启小程序开发工具并清缓存 问题解决
- css3的的新特性
1.transform 2.calc 3.transition
- 新的学习历程-python1 Hello World
1 print('hello world!') 2 if 2 > 0: 3 print('ok') 4 print('yes') 5 6 x = 3; y = 4 7 print(x + y) ...
- 微信带参数的小程序码生成并上传到七牛云(java)
在大家看正式内容之前请耐心的听我把这段话说完:我冒昧的猜一下,你为了解决问题估计已经看了很多文章了,如果这边文章能给你带来帮助,不胜荣幸,如果有错误也请批评指正,共同进步,我之前在完成这个功能之前,从 ...
- IDEA隐藏.idea
- spider_爬取斗图啦所有表情包(图片保存)
"""爬取斗图吧里面的所有表情包知识点总结: 一.使用requests库进行爬取,随机请求头(网站反爬措施少.挂个请求头足矣) 二.具体思路: 1.先爬取所有的图片url ...
- 1、docker 安装
1 准备三台linux服务器 2 docker安装 三台机器全部执行docker安装操作 2.1 移除以前docker相关包 sudo yum remove docker \ docker-clien ...
- unittest框架-测试报告模板【BeautifulReport】安装、配置使用、生成带截图的测试报告
一.下载BeautifulReport模块 1.下载BeautifulReport模块 下载地址:https://github.com/TesterlifeRaymond/BeautifulRepor ...
- vue3 门户网站搭建8-字体
浏览器默认的可选字体比较少,如果没有合适的则需要额外下载并引入. 一般使用 开源字体即可,商用需要花钱~ 将下载好的 ttf 格式字体放入项目下文件夹: 样式文件中增加配置:(main.css) 即可 ...
- js获取url中的查询参数
// 获取url中query // return {cate_id: '1', street_id: '0'} function getParams() { var url = location.se ...