在下面的示例中,我使用created
生命周期来订阅事件服务。这是正常的做法吗?有没有更合适的方式或生命周期方法来做这种事情?
const ViewComponent = {
data(){
return {
pathname: window.location.pathname
}
},
created(){
eventService.on('routeResolved', (route) => {
this.pathname = route.pathname
})
},
computed: {
component () {
return routes[this.pathname]
}
},
render (h) {
return h(this.component)
}
}
答案 0 :(得分:3)
用于初始化的生命周期方法完全取决于您需要访问的内容。如果您需要以任何方式操纵DOM,则在mounted
生命周期事件之前不能这样做。要像设置问题那样设置事件处理程序,使用created
生命周期事件就完全可以了。
主要用于一次性初始化操作,您将选择created
或mounted
。如果每次组件收到新属性时都需要完成某些操作,则可以使用beforeUpdated
或updated
。
查看documentation以获取完整说明。