vue3:setup中如何获取组件实例?
在 setup 和其他 Composition API 中没有 this可通过 getCurrentInstance 获取当前实例若使用 Options API 可照常使用 this代码说明import { onMounted, getCurrentInstance } from 'vue'export default {data () {return {x: 1}},setup () {// 这
·
- 在 setup 和其他 Composition API 中没有 this
- 可通过 getCurrentInstance 获取当前实例
- 若使用 Options API 可照常使用 this
代码说明
import { onMounted, getCurrentInstance } from 'vue'
export default {
data () {
return {
x: 1
}
},
setup () {
// 这里打印出来undefined,setup里面没有this
console.log(this)
onMounted (() => {
// 这里就能打印出来1啦
console.log(instance.data.x)
})
const instance = getCurrentInstance()
// 这里打印出来是 undefined,因为 setup 声明周期是 beforeCreated 和 created 合并的,这时候 data 还没有初始化,所以我们要在 onMounted 里打印。
console.log(instance.data.x)
}
}
更多推荐
所有评论(0)