这篇文章主要介绍“vue3怎么使用ref和reactive定义和修改响应式数据”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue3怎么使用ref和reactive定义和修改响应式数据”文章能帮助大家解决问题。
需求:vue3中setup组合式api中如何定义响应式数据并且修改赋值呢?
1、字符串/数字:“ref”是vue3中用来存储值的响应式数据源,它可以定义字符串,数字等
<script setup> import { ref } from 'vue' // “ref”是用来存储值的响应式数据源。 // 理论上我们在展示该字符串的时候不需要将其包装在 ref() 中, const message = ref('Hello World!') // 但是在这个示例中更改这个值的时候,就可以实现数据和页面响应式绑定了。 function changeMsg(data){ //message=data 这种是不行的,无法实现双向绑定 message.value=data } </script> <template> <h2>{{ message }}</h2> <button @click="changeMsg('数据修改')">Reverse Message</button> </template>
2、数组/对象:引入 reactive 用来定义对象数据包括数组和对象
vue3使用proxy
,对于对象和数组都不能直接整个赋值
<script setup> import { reactive} from 'vue' const arr = reactive([]); const arr2=reactive({arr:[]}); const load = () => { const res = [2, 3, 4, 5]; //假设请求接口返回的数据 //方法1 失败,直接赋值丢失了响应性 arr = res; // 方法2 这样也是失败 arr.concat(res); // 方法3 成功 插入数据,修改数据属性,但是很麻烦 res.forEach(e => { arr.push(e); }); // 方法4 成功 arr.value =res //方法5 成功 arr2.arr = res }; </script> <template> <h2>Demo</h2> </template>
这里就是vue3中setup组合式api中如何定义响应式数据并且修改赋值全部内容了
关于“vue3怎么使用ref和reactive定义和修改响应式数据”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。