在Angular中是否存在一个beforeMount(Vue)等效项。 也许不是作为生命周期的钩子,而是作为常规技术之类的东西。我的意思是在哪里做您通常在beforeMount中做的事情的正确位置,例如获取数据或消费商店。谢谢
答案 0 :(得分:0)
Vue的beforeMount
的安全等效项为ngAfterViewInit
。
如here
在Angular初始化组件的视图和子视图之后响应。
但是对于获取数据和消费存储以及使用@Input
属性,使用ngOnInit
是常见,安全且正确的。
在Angular首先显示数据绑定属性并设置指令/组件的输入属性后,初始化指令/组件。
如果要使用@ViewChild
或访问路由状态,最好使用ngAfterViewInit
。
答案 1 :(得分:0)
从Vue.js文档(https://vuejs.org/v2/api/#beforeMount):
在安装开始之前被调用:
render
函数将被首次调用。
从Angular 8文档(https://angular.io/guide/lifecycle-hooks#lifecycle-sequence):
ngOnInit()
在Angular首先显示指令后初始化指令/组件 数据绑定属性并设置指令/组件的输入 属性。
在第一个
ngOnChanges()
之后被调用一次。
仅在模板渲染之前调用一次(ngAfterViewInit
或ngAFterContentInit
)
再次关注文档(https://angular.io/guide/lifecycle-hooks#oninit)中的在哪里获取初始数据:
ngOnInit()是组件获取其初始位置的好地方 数据。
因此,Angular的ngOnInit
相当于Vue.js的beforeMount