本文介绍了Vue.js这在计算属性中是未定义的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下型号为selectedProp
的输入标签:
I have following input tag with model selectedProp
:
<input type="text" v-model="selectedProp" />
我想遍历这样的项目:
<div v-for="item of filteredItems">{{item.prop}}</div>
以下是该组件的脚本:
export default {
name: 'App',
data() {
return {
items: [],
selectedProp: "",
projects: [],
errors: []
}
},
created() {
axios.get(`${URL}`)
.then(response => {
// JSON responses are automatically parsed.
this.items = response.data;
})
.catch(e => {
this.errors.push(e)
});
},
computed: {
filteredItems() {
if(this.selectedProp) {
console.log(this.selectedProp);
return this.items.filter(function (item) {
return item.prop == this.selectedProp;
});
}
return this.items;
}
},
}
错误
推荐答案
在这种情况下,您可以使用有权访问this
对象的箭头功能
In this case you could use arrow function which has access to this
object
return this.items.filter( (item)=> {
return item.prop == this.selectedProp;
})
这篇关于Vue.js这在计算属性中是未定义的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!