5、reactive

作用

reactive`用来定义:对象类型数据

reactive重新分配一个新对象,会失去响应式(可以使用Object.assign`去整体替换)。

代码

复制代码
<template>
<div>
    
    <h2>{{ info.name }}</h2>
    <h2>{{ info.age }}</h2>
    <button @click="updateName">修改名字</button>
    <button @click="updateAge">修改年龄</button>
    <button @click="showPhone">显示联系方式</button>
</div>
</template>

<script setup lang="ts" name="Student">
    import { reactive } from 'vue';
    let info=reactive({name:'weiwei',age:18})
    function updateName(){
        info.name="李四"
    }
    function updateAge(){
        info.age+=1
        
    }
    function showPhone(){
        alert("18880709")
    }
</script>

<style scoped>

</style>

重新分配一个新对象代码

复制代码
<template>
<div>
    
    <h2>{{ info.name }}</h2>
    <h2>{{ info.age }}</h2>
    <button @click="updateName">修改名字</button>
    <button @click="updateAge">修改年龄</button>
    <button @click="updateInfo">修改名字和年龄</button>
    <button @click="showPhone">显示联系方式</button>
</div>
</template>

<script setup lang="ts" name="Student">
    import { reactive } from 'vue';
    let info=reactive({name:'weiwei',age:18})
    function updateName(){
        info.name='李四'
    }
    function updateAge(){
        info.age+=1
        
    }
    function showPhone(){
        alert("18880709")
    }
    function updateInfo(){
        Object.assign(info,{name:'王五',age:38})
    }
</script>

<style scoped>

</style>
相关推荐
要加油哦~3 分钟前
vue · 插槽 | $slots:访问所有命名插槽内容 | 插槽的使用:子组件和父组件如何书写?
java·前端·javascript
先做个垃圾出来………12 分钟前
split方法
前端
前端Hardy1 小时前
HTML&CSS:3D图片切换效果
前端·javascript
spionbo1 小时前
Vue 表情包输入组件实现代码及完整开发流程解析
前端·javascript·面试
全宝1 小时前
✏️Canvas实现环形文字
前端·javascript·canvas
lyc2333331 小时前
鸿蒙Core File Kit:极简文件管理指南📁
前端
我这里是好的呀1 小时前
全栈开发个人博客12.嵌套评论设计
前端·全栈
我这里是好的呀1 小时前
全栈开发个人博客13.AI聊天设计
前端·全栈
金金金__1 小时前
Element-Plus:popconfirm与tooltip一起使用不生效?
前端·vue.js·element