マイコンポーネント・コードは次のようである:Uncaught TypeErrorを解決するには:this.filtersは関数ではありませんか? (vue.js 2)
<script>
import _ from 'lodash'
export default{
props:['search','category'],
data(){
return{
price_min:'',
price_max:''
}
},
computed:{
filters(data){
const price = {min:this.price_min, max:this.price_max}
return {q:this.search, category:this.category, sort:data, location:data, price}
},
},
methods:{
filterProduct: _.debounce(function(data=null){
this.$store.dispatch('getProducts', this.filters(data))
},500)
}
}
</script>
私の完全なコードは次のようである:http://pastebin.com/K7vwU0yY
実行されると、コンソール上でこのようなエラーが存在する:
Uncaught TypeError: this.filters is not a function
エラーを解決するにはどうすればよいですか?
私はあなたが次のように宣言すべきだと思います: 'filters:function(data){...}'。 –
はデータプロパティを作成しますが、これは関数として使用することを意図していません。他のいくつかの変数に関して計算されるデータプロパティによく似ています。 –
'location:data、price'この行はどういう意味ですか?私があなたに代案を提案できるように。 –