php中文网 | cnphp.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 720|回复: 0

vue过滤器filters获取不到this对象的解决办法

[复制链接]

3138

主题

3148

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

UID
1
威望
0
积分
7946
贡献
0
注册时间
2021-4-14
最后登录
2024-11-21
在线时间
763 小时
QQ
发表于 2022-1-23 13:20:13 | 显示全部楼层 |阅读模式
原理
  • 在data中定义一个属性that,把this存储到that中
  • 在调用filters中的方法sum的时候将that传进去即可


下面举个例子用filters计算data中 a+b 的值
注意:filters中的sum方法的第一个参数是|左边那个a,第二个参数才是括号写的that
[mw_shl_code=applescript,true]<template>
  <div>{{a|sum(that)}}</div>
</template>

<script>
  export default {
    name: "test",
    data() {
      return {
        that: this,
        a: 1,
        b: 2
      }
    },
    filters: {
      sum(a, that) {
        console.log(that);
        return a + that.b;
      }
    },
  }
</script>
[/mw_shl_code]






上一篇:MySQL数据库基本操作-正则表达式
下一篇:解决IDEA JDK9没有module-info.java的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|php中文网 | cnphp.com ( 赣ICP备2021002321号-2 )

GMT+8, 2024-11-22 03:56 , Processed in 0.289056 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

申明:本站所有资源皆搜集自网络,相关版权归版权持有人所有,如有侵权,请电邮(fiorkn@foxmail.com)告之,本站会尽快删除。

快速回复 返回顶部 返回列表