Vue3之ref

ref函数

  • 作用: 定义一个响应式的数据
  • 语法: const xxx = ref(initValue)
    • 创建一个包含响应式数据的引用对象(reference对象,简称ref对象)
    • JS中操作数据: xxx.value
    • 模板中读取数据: 不需要.value,直接:<div>{{xxx}}</div>
  • 备注:
    • 接收的数据可以是:基本类型、也可以是对象类型。
    • 基本类型的数据:响应式依然是靠Object.defineProperty()getset完成的。
    • 对象类型的数据:内部 “ 求助 ” 了Vue3.0中的一个新函数—— reactive函数。

 示例:

<template>
    <h1>一个人的信息</h1>
    <h2>姓名:{{name}}</h2>
    <h2>年龄:{{age}}</h2>
    <h3>工作种类:{{job.type}}</h3>
    <h3>工作薪水:{{job.salary}}</h3>
    <button @click="changeInfo">修改人的信息</button>
</template>

<script>
    import {ref} from 'vue'
    export default {
        name: 'App',
        setup(){
            //数据
            let name = ref('张三')
            let age = ref(18)
            let job = ref({
                type:'前端工程师',
                salary:'30K'
            })

            //方法
            function changeInfo(){
                // 需要用.value来更改值,才会在界面上展示最新的数据
                name.value = '李四'
                age.value = 48
                console.log(job.value)
                // 对象的写法
                job.value.type = 'UI设计师'
                job.value.salary = '60K'
                console.log(name,age)
            }

            //返回一个对象(常用)
            return {
                name,
                age,
                job,
                changeInfo
            }
        }
    }
</script>

 

   

posted @ 2022-12-27 10:18  安静点--  阅读(640)  评论(0)    收藏  举报