美文网首页
setup中如何获取组件实例

setup中如何获取组件实例

作者: 时间的溺水者 | 来源:发表于2022-05-15 06:47 被阅读0次

    因为在setup和composition API中没有this,则需要通过getCurrentInstance来获取当前组件实例,如果使用options API,则同vue2一样通过this,来获取当前组件实例

    <template>
        <p>get instance</p>
    </template>
    
    <script>
    import { onMounted, getCurrentInstance } from 'vue'
    
    export default {
        name: 'GetInstance',
        data() {
            return {
                x: 1,
                y: 2
            }
        },
        setup() {
            console.log('this1', this)
    
            onMounted(() => {
                console.log('this in onMounted', this)
                console.log('x', instance.data.x)
            })
    
            const instance = getCurrentInstance()
            console.log('instance', instance)
        },
        mounted() {
            console.log('this2', this)
            console.log('y', this.y)
        }
    }
    </script>
    

    结果:

    image.png image.png

    相关文章

      网友评论

          本文标题:setup中如何获取组件实例

          本文链接:https://www.haomeiwen.com/subject/goeiurtx.html