我不太熟悉Vue.js或前端所以也许我想要实现的不是正确的方法,但这是我的情况:
mounted() {
this.newMessages();
this.scrollDown();
},
updated() {
// prop gets updated from parent component, newMessages method depends on it
this.$options.mounted = [
this.newMessages(),
];
this.scrollDown();
},
methods: {
newMessages() {
// logic, uses prop thread.id passed to component, needs to be initiated on mount
},
scrollDown() {
// logic
},
},
问题是:我如何"重新安装" Vue.js挂载组件中的方法,如果更新的挂钩会触发吗?
现在,发生了什么,newMessages方法通过websockets进行广播。它使用名为线程(该对象的 id 属性)的道具来侦听特定频道。
现在,当父组件更改prop(线程)时,组件的DOM会更改以显示来自该线程的消息,但该侦听器方法仍会侦听错误的通道。
我尝试了$ options来重置挂钩,但是只堆叠了挂载的方法,并多次获得相同的消息。