Vue JS提供/注入和道具

时间:2019-08-12 20:50:52

标签: javascript vue.js vuejs2 vue-component

与道具相比,何时提供/注入。

我认为道具使组件更有意义。

提供/注入使组件紧密耦合。

使用提供/注入是一种更好的方法的用例是什么。

请咨询

谢谢

1 个答案:

答案 0 :(得分:1)

有些差异可以帮助我在许多情况下进行选择

  1. 道具是反应性的,而提供/注入不是。
  2. 道具只能在直接子组件上使用。

来自文档:

  

提供/注入一起使用,以使祖先组件可以为其所有后代充当依赖项注入器,而不管组件层次结构有多深,只要它们在同一父链中即可。如果您熟悉React,这与React的上下文功能非常相似。

  1. 您可以使用提供/注入为道具设置默认值。

示例:

const Child = {
  inject: ['foo'],
  props: {
    bar: {
      default () {
        return this.foo
      }
    }
  }
}

Here是一个很好的例子,介绍了何时使用Provide / Inject