1. 理解过滤器
定义:对要显示的数据进行特定格式化后再显示(适用于一些简单逻辑的处理)。
语法:
1.注册过滤器:Vue.filter(name,callback) 或 new Vue{filters:{}}
2.使用过滤器:{
{ xxx | 过滤器名}} 或 v-bind:属性 = “xxx | 过滤器名”
备注:
1.过滤器也可以接收额外参数、多个过滤器也可以串联
2.并没有改变原本的数据, 是产生新的对应的数据
2. 编码
1). 定义过滤器
全局过滤器
Vue.filter(filterName, function(value[,arg1,arg2,...]){
// 进行一定的数据处理
return newValue
})
局部过滤器
new Vue{
filters:{
filterName(value){
return newValue
}
}
}
2). 使用过滤器
<div>{
{myData | filterName}}</div>
<div>{
{myData | filterName(arg)}}</div>
示例
<body>
<div id="demo">
<h2>显示格式化的日期时间</h2>
<p>{
{date}}</p>
<p>完整版:{
{date | dateString}}</p>
<p>年月日:{
{date | dateString('YYYY-MM-DD')}}</p>
<p>时分秒:{
{date | dateString('HH:mm:ss')}}</p>
</div>
<script src="../js/vue.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/moment.js/2.29.1/moment.js"></script>
<script>
Vue.filter('dateString', function(value, format='YYYY-MM-DD HH:mm:ss'){
return moment(value).format(format);
});