Vue3入门之三
1.获取实例 instance
在 vue2 中,我可以通过 this和this.$el获取到当前实例的dom元素,但是在Vue3的 组合式API中如何获取到Dom元素呢?可以通过 ref 定义的方式,这个问题我先不总结,就说使用 实例的形式进行获取。 如下的代码所示,我希望在点击按钮的时候,会弹出实例信息,但是经过测试,这个 instance 是一个 null。
1 | <template> |
【解决方案】
通过在 onMounted 中保存实例的引用。
1 | <template> |
1.hook 中getcurrentinstance() 返回值为Null 拿不到全局上下文对象的问题
2.vue3在setup中获取DOM元素 这是在 onMounted 函数中获取实例。
3.从 Composition API 源码分析 getCurrentInstance() 为何返回 null 这里在源码的角度表达了为什么获取到的实例为 null
4.关于Vue3获取当前组件实例的 getCurrentInstance 方法的补充 大家不要依赖 getCurrentInstance 方法去获取组件实例来完成一些主要功能,否则在项目打包后,一定会报错的。
2.在setup中使用异步组件
在setup中使用异步组件,需要定义一个变量的形式进行。
1 | <script setup> |