怎么新建MySQL数据库

发布时间:2022-07-06 作者:admin
阅读:366
这篇文章主要介绍“Vue3中的Refs和Ref的使用有什么不同吗”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue3中的Refs和Ref的使用有什么不同吗”文章能帮助大家解决问题。

    

小编同样和大家分享关于Vue3中的数据相应的问题,下面我们来例举一个这样的例子

Vue.createApp({
    template: `<div>{{ nameObj.name }}</div>`,
    setup() {
        const { reactive } = Vue
        const nameObj = reactive({name:'lilei',age:18})
        
        setTimeout(() => {
            nameObj.name = 'hanmeimei'
        },2000)
        return {
            nameObj
        }
    }
}).mount('#root')

这个时候我们可能联想到了es6中关于解构赋值的内容,我们是不是可以将上面例子中的nameObj通过结果解构的方式获取内部的name,然后直接将name返回呢?也就是将代码写成这样

Vue.createApp({
    template: `<div>{{ name }}</div>`,
    setup() {
        const { reactive,toRefs } = Vue
        const nameObj = reactive({name:'lilei',age:18})
                let { name } = nameObj
        setTimeout(() => {
            name.value = 'hanmeimei'
        },2000)
        return {
            name
        }
    }
}).mount('#root')

在实际运行中,我们发现,页面上的内容并没有变成hanmeimei,这个时候,我们需要引入Vue3中的另外一个内容,我们应该把代码修改成这样,才能实现数据和页面的响应式

Vue.createApp({
    template: `<div>{{ name }}</div>`,
    setup() {
        const { reactive,toRefs } = Vue
        const nameObj = reactive({name:'lilei',age:18})
        let { name } = toRefs(nameObj)
        setTimeout(() => {
            name.value = 'hanmeimei'
        },2000)
        return {
            name
        }
    }
}).mount('#root')

同样,和toRefs很类似的还有toRef,代码实例是这样的

Vue.createApp({
    template: `<div>{{ age }}</div>`,
    setup() {
        const { reactive,toRef } = Vue
        const nameObj = reactive({name:'lilei'})
        let age = toRef(nameObj,'age')
        setTimeout(() => {
            age.value = 'hanmeimei'
        },2000)
        return {
            age
        }
    }
}).mount('#root')

到此这篇关于“Vue3中的Refs和Ref的使用有什么不同吗”的文章就介绍到这了,更多相关Vue3中的Refs和Ref的使用有什么不同吗内容,欢迎关注群英网络技术资讯频道,小编将为大家输出更多高质量的实用文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

二维码-群英

长按识别二维码并关注微信

更方便到期提醒、手机管理

7*24 全天候服务

售前 400-678-4567

售后 0668-2555666

售后 400 678 4567

信息安全 0668-2555 118

域名空间 3004329145