关于filters过滤器中获取不到this

在vue的实例中,filter中编写过滤器会发现过滤器中的this指向了undefined,原因是过滤器的注册在 vue实例之前,this默认指向了window,因为严格模式指向了undefined,

解决:

一,使用计算属性替代

二,传入this

<template>
  <div>{value | formate(that)}}</div>
</template>

data () {
  return {
  that: this      
    }      
}

filters: {
  formate (val, obj) {
  return '0'+obj.methods(val)  
}  
}
原文地址:https://www.cnblogs.com/zhangrenjie/p/13947861.html