父组件传参,一般分为两种情况:

1、父组在data中定义的数据直接传给子组件使用,子组件在生命周期中是可以获取并使用的。

2、父组件传给子组件的参数,是从接口中获取到的, 可能遇到的问题就是,如果在组件的created生命周期中获取到参数并进行新数据的获取并进行页面渲染,但此时父组件请求的数据可能还没有完全返回,子组件就开始使用此数据,该数据自然不存在,打印在控制台中的父组件穿给子组件的参数为undefined,因此就会出现父组件传参不及时,子组件使用数据较早,造成数据无法使用。

解决改问题的方法:

  1. 在子组件的created生命周期中使用setTimeout定时器,来延缓执行生命周期中的函数 (此方法不推荐)
  2. 使用vue的监听方法,监听父组件的传参,一旦侦听到数据返回,便立即调用子组件的方法进行数据获取,相对于第一种方法,更加灵活和快速。
    在这里插入图片描述
Logo

前往低代码交流专区

更多推荐