在参数中用参数调用函数会导致错误
问题描述:
我有一个计算Vue函数,它有一个参数。每次我尝试将其绑定到的点击,我接受和错误Error in event handler for "click": "TypeError: searchHashtag is not a function"
在参数中用参数调用函数会导致错误
这里的HTML:
<el-button @click="searchHashtag('#acc')">Test</el-button>
而这里的逻辑:你想
data() {
messages: []
},
mounted() {
api.fetchMessages(this.projectId, (data) => {
this.messages = data.messages;
},
computed: {
searchHashtag (searchBy) {
if (_.contains(this.messages, searchBy))
this.$message('This is a message.');
}
}
答
的方法,而不是计算属性。
methods: {
searchHashtag (searchBy) {
if (_.contains(this.messages, searchBy))
this.$message('This is a message.');
}
}
计算属性不能像函数那样调用。它们的行为像Vue的属性,不需要参数。当你需要一个接受参数的函数时,总是使用一个方法。