L&Ming

导航

 
  • 对于普通函数,this指的是直接的调用者,在非严格模式下,如果没有直接调用者,this指的是window。(匿名函数指向的是window)
  • 箭头函数(es6)是没有自己的this,在它内部使用的this是由它定义的宿主对象(vue实例)决定,this指的是vue实例对象
  • 绑定vue实例到this的方法
1.使用bind
lists:function(){
var arr=[];
this.list.forEach(function(val){  //forEach是js中的方法,js中的方法都指向window
        if(val.indexOf(this.show)!=-1){
arr.push(val);
}
}.bind(this))
return arr;
}
2.把vue实例的this赋值给另一个变量再使用
lists:function(){
var arr=[];
  var that=this;
this.list.forEach(function(val){ 
        if(val.indexOf(this.show)!=-1){
arr.push(val);
}
})
return arr;
}

 

posted on 2020-07-29 18:22  L&Ming  阅读(393)  评论(0)    收藏  举报