解决子组件获取不到父组件传值问题
最近自己在用vue仿写QQ音乐是遇到一个问题:父组件往子组件里面传了3个值,前两个在子组件里面能获取到,最后一个怎么都获取不到。

(上图这是父组件往子组件传的三个值)

(这是父组件里面获取song这个字段的方式)
在百度之后才知道 异步从接口里取的,那这个组件在任何生命周期里都取不到,而应该在接口调取后取到。
但是如果在子组件再调一次接口虽然能解决问题,但明显很不优雅,于是有了如下两个解决方案
- 在组件上加上v-if=”song.length”,可以确保song有值后调用,然后你就可以在生命周期created里面取到值了。
- 可以参考vue官方文档-异步组件这一块 Vue.js-异步组件 来实现。
下面是第一种解决方案的代码:
1 |
|
第二中解决方案异步组件暂时还没研究懂,这个坑等我研究懂了再填…
解决子组件获取不到父组件传值问题
https://xypecho.github.io/2018/04/07/解决子组件获取不到父组件传值问题/