$root、$parent、$refs 的使用,provide 与 inject
基本使用
- $root 获取根组件
- $parent 访问父组件的数据和方法
- $refs 访问 绑定了
ref=
的组件以及方法 - 注意:$refs 只会在组件渲染完成之后生效,并且它们不是响应式的。这仅作为一个用于直接操作子组件的“逃生舱”——你应该避免在模板或计算属性中访问 $refs。
provide 与 inject
- provide 选项允许我们指定我们想要提供给后代组件的数据/方法
- inject 选项来接收指定的 property
- 注意:
- 优势:祖先组件不需要知道哪些后代组件使用它提供的 property。后代组件不需要知道被注入的 property 来自哪里
- 劣势:维护起来不好,找不到数据/方法来源。二来,并不是响应式的。
视具体情况而用。