1
我有一个功能(getAllData
可以进行外部数据查询),我需要在两种情况下调用:组件挂载和更改prop
时。我可以从手表调用方法并安装吗?
但是,在watch
和mounted
中使用它时,我得到了TypeError: this.getAllData is not a function
。
由于methods can be called from methods,我想知道这是否适用于从组件调用的方法,如watch
或mounted
。
我的(简化的)实例是以下:
export default {
props: ['triggerReload'],
data: function() {
return {
// some variables
}
},
watch: {
triggerReload: this.getAllData()
},
methods: {
getAllData: function() {
// this function correctly fetches external data
}
},
mounted: this.getAllData()
}
我的解决办法将是或者复制功能的代码(这是不DRY)或调用外部功能(Vue的实例之外定义 - 这可能也是反模式)编辑:这是一个组件,所以我不知道如何调用外部函数和引用实例(它不是实例化的var vm = new Vue(...)
)
你检查过这个是什么吗? – evolutionxbox