getCurrentInstance
获取当前组件实例
import { getCurrentInstance } from "vue";
const instance = getCurrentInstance();
ctx
当前组件的上下文,只能在开发环境下使用,生产环境下的 ctx 将访问不到,ctx 中包含了组件中由 ref 和 reactive 创建的响应式数据对象,以及 proxy 下的属性
const { ctx } = getCurrentInstance();
- 注意:在 setup 中不可以调用 getCurrentInstance().ctx 来获取组件内部数据,因为在 prod 模式会被干掉
原因:
- ctx 只是为了便于在开发模式下通过控制台检查
- 在 prod 模式是一个空对象
图片来源掘金 春去春又来
proxy
在开发环境以及生产环境下都能放到组件上下文对象(推荐)
包含属性$attrs,$data,$el,$emit,$forceUpdate,$nextTick,$options,$parent,$props,$refs,$root,$slots,$watch
const { proxy } = getCurrentInstance();
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。