在vue中,发送axios请求应该放在created里还是mounted里?详解
在回答这个问题之前,我们需要知道vue的生命周期钩子顺序:beforecreated(组件创建前,dom元素、data都为undefined)
created(组件创建后,dom元素为undefined、data有值)
beforemounted(组件挂载前,dom元素为undefined、data有值)
mounted(组件挂载后,dom元素有值、data有值)。
如果存在父子组件,则顺序为
父 beforecreated
父 created
父 beforemounted子 beforecreated
子 created
子 beforemounted
子 mounted父 mounted
事实上,axios请求在created和mounted中发生是都可以的,但是具体根据业务来判断使用,比如存在父子组件,并且业务上要求子组件的数据要比父组件的数据先出来,那么就应该是:子组件请求放在created或mounted里,父组件请求必须仿真mounted里