本文主要是介绍随手记:vue2 filters this指向undefined,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天在使用filters的时候,需要用到this的数据,结果发现,this打印出来的是undefined
原因: 过滤器注册在vue实例之前,所以this指向了window,但是因为严格模式原因,为 undefined;
所以需要全局声明this,在filters中才能指向vue
//表格中插槽使用filters的地方<template #joinStatus><el-table-column label="随访状态" align="center"><template slot-scope="scope">{{ scope.row.joinStatus | joinStatusFilter(that) }}</template></el-table-column></template>//在data中声明that 指向thisdata() {return{// 保存this以便filter中使用that: this,}}filters: {joinStatusFilter(value, that) {let status = that.statusList.find(item => item.value == value);return status? status.label : '';}},
这篇关于随手记:vue2 filters this指向undefined的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!