2017-09-26 3 views
1

매개 변수가있는 계산 된 Vue 함수가 있습니다. 모든 내가 클릭에 바인딩하려고 할 때, 나는 수신 및 오류 여기 Error in event handler for "click": "TypeError: searchHashtag is not a function"click에서 매개 변수가있는 함수를 호출하면 오류가 발생합니다.

는 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.'); 
    } 
} 

답변

2

계산 된 속성.

methods: { 
    searchHashtag (searchBy) { 
      if (_.contains(this.messages, searchBy)) 
       this.$message('This is a message.'); 
    } 
} 

계산 된 속성을 함수처럼 호출 할 수 없습니다. 그들은 Vue의 속성처럼 행동하고 논쟁을하지 않습니다. 인수를 받아들이는 함수가 필요할 때는 항상 메소드를 사용하십시오.