【Vue3】ref对象类型的响应式数据

文章目录


ref对象类型简介

  • 用法: let xx = reactive({xxx:"xxx"})
  • 返回值: 一个Proxy的对象,就是响应式对象
  • 特别注意:
    • 既能定义对象类型,也能定义基本类型的响应式数据。但是ref底层还是需要reactive的proxy做响应式数据

代码展示:

bash 复制代码
<div>
            <div>
                <span>游戏名:{{gameDetail.name}}</span>
                <span>版本号:{{gameDetail.version}}</span>
                <span>大小:{{gameDetail.size}}</span>
            </div>
            <div>
                <button @click="handleChangeGamesDetail">修改内容</button>
            </div>
            <div>
                <ul>
                    <li v-for="(item,index) in games" :key="index">
                        <div>
                            <span>游戏名:{{item.name}}</span>
                            <span>版本号:{{item.version}}</span>
                            <span>大小:{{item.size}}</span>
                        </div>
                    </li>
                </ul>
            </div>
            <div>
                <button @click="handleChangeGames">修改游戏</button>
            </div>
        </div>
</template>
<script setup lang="ts" name="item">
let gameDetail = reactive({
        name:"王者荣耀",version:"1.0",size:"1gb"
    })
    let games = reactive([
        {
            name:"王者荣耀",version:"1.0",size:"1gb"
        },
        {
            name:"星际争霸",version:"2.0",size:"2gb"
        },
        {
            name:"魔兽争霸",version:"3.0",size:"3gb"
        }
    ])
    const handleChangeGamesDetail = ()=>{
        gameDetail.name = "远梦之星"
    }
    const handleChangeGames = ()=>{
        games[0].name = "修改游戏名"
    }

</script>

✨ 踩坑不易,还希望各位大佬支持一下 \textcolor{gray}{踩坑不易,还希望各位大佬支持一下} 踩坑不易,还希望各位大佬支持一下

📃 个人主页: \textcolor{green}{个人主页:} 个人主页: 沉默小管

📃 个人网站: \textcolor{green}{个人网站:} 个人网站: 沉默小管

📃 个人导航网站: \textcolor{green}{个人导航网站:} 个人导航网站: 沉默小管导航网

📃 我的开源项目: \textcolor{green}{我的开源项目:} 我的开源项目: vueCms.cn

🔥 技术交流 Q Q 群: 837051545 \textcolor{green}{技术交流QQ群:837051545} 技术交流QQ群:837051545

👍 点赞,你的认可是我创作的动力! \textcolor{green}{点赞,你的认可是我创作的动力!} 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向! \textcolor{green}{收藏,你的青睐是我努力的方向!} 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富! \textcolor{green}{评论,你的意见是我进步的财富!} 评论,你的意见是我进步的财富!

如果有不懂可以留言,我看到了应该会回复

如有错误,请多多指教

相关推荐
三翼鸟数字化技术团队17 分钟前
Vue自定义指令最佳实践教程
前端·vue.js
Jasmin Tin Wei1 小时前
蓝桥杯 web 学海无涯(axios、ecahrts)版本二
前端·蓝桥杯
圈圈编码1 小时前
Spring Task 定时任务
java·前端·spring
猿榜1 小时前
js逆向-喜某拉雅Xm-Sign参数解密
javascript
转转技术团队1 小时前
代码变更暗藏危机?代码影响范围分析为你保驾护航
前端·javascript·node.js
Spark2381 小时前
关于vue3整合tiptap的slash菜单的ts支持
vue.js
Mintopia1 小时前
Node.js高级实战:自定义流与Pipeline的高效数据处理 ——从字母生成器到文件管道的深度解析
前端·javascript·node.js
Mintopia1 小时前
Three.js深度解析:InstancedBufferGeometry实现动态星空特效 ——高效渲染十万粒子的底层奥秘
前端·javascript·three.js
北凉温华1 小时前
强大的 Vue 标签输入组件:基于 Element Plus 的 ElTagInput 详解
前端
随笔记1 小时前
Flex布局下,label标签设置宽度依旧对不齐,完美解决(flex-shrink属性)
javascript·css·vue.js