Vue采用provide各种传值后inject取得undefined的情况

原创
小哥 3年前 (2022-11-10) 阅读数 40 #大杂烩

首先使用provide是为了方便孙子组件获取爷爷组件的数据。

例如,我想在下面使用它。provide把table的refs分配给每个孙子组件


但是provide是先于mounted已执行,导致dom它在构建之前被发送到子组件,因此子组件inject后值为undefined

所以我不想给出响应数据,所以在爷爷的组件中mounted为其赋值后,孙子组件也可以同步更新。

这样,组件通常可以获得其值

我不知道有没有更好的解决办法,如果你踢我! o(  ̄▽ ̄ )ブ

你为什么不让爷爷把它传下去?this

但是传递this后为undefined怎么办?

原始写作方法:

  provide: {
    $examRouter: this,
  },

得改成 函数的编写 就好了:

  provide() {
    return {
      $examRouter: this,
    }
  },
版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

热门