双越老师,麻烦帮我看看这个是啥原因啊

来源:1-1 学前必读

菜卷_

2021-06-05

老师,麻烦你用两三分钟看看图片,应该就能清晰的明白我碰到的问题了。。,刚开始我以为是父子组件生命周期的原因,从mounted改成created,但最后发现并不是,所以现在特别奇怪,为啥会跳过getRoute这个方法呢?。。
图片描述

写回答

2回答

双越

2021-06-05

第一,你在子组件 created 时打印 items 是空的,这符合预期,因此此时父组件 listRoute() 可能还未执行完成(异步的)

第二,你说最终也没渲染出来,这看起来是一个问题。需要排查。

排查的方法:你先在父、子组件的 updated 时,分别打印 items ,看能得到正确的结果吗?

0
3
菜卷_
回复
双越
明白了,感谢双越老师,你的所有课我都买了,哈哈,很喜欢你的课
2021-06-07
共3条回复

双越

2021-06-05

没看懂你的问题。你在created 里调用了 this.getRoute() ,那当然会跳转到 getRoute 方法啊,这不听正常的嘛?

0
1
菜卷_
图片可能没显示全...你点击下图片可以看到完整的图~我是在父组件中的created里调用了getRoute,按理说就算created中有异步请求,也会在异步请求返回数据之后才会去执行子组件的created。 然后问题就出现了,我在父组件中的created中调用了getRoute方法,但是在异步请求还没有返回数据的时候就跑去执行子组件的created了,导致这时候传给子组件的是一个空数组,所以这里就比较疑惑。。。 然后我找到的解决方法是给子组件加一个v-if标识符,只有等请求返回了才会去渲染子组件,但是对原因又不太清楚~ 不知道老师能明白我的意思不...
2021-06-05
共1条回复

2024版 前端框架及项目面试 聚焦Vue3/React/Webpack

面向1-3年前端的框架及项目面试“刚需内容”

4663 学习 · 1644 问题

查看课程