相关推荐recommended
vue3中如何使用ref和reactive定义和修改响应式数据?
作者:mmseoamin日期:2023-12-02

需求:vue3中setup组合式api中如何定义响应式数据并且修改赋值呢?

1、字符串/数字:“ref”是vue3中用来存储值的响应式数据源,它可以定义字符串,数字等

2、数组/对象:引入 reactive 用来定义对象数据包括数组和对象

vue3使用proxy,对于对象和数组都不能直接整个赋值


3、问题怎么取到reactive对象,并将对象传给后端

我已经定义了reactiveobejct:

const selectedAnswers = reactive({})

稍后,我将值赋给此对象并可以看到它:

Proxy {2: "Lorem, ipsum dolor.", 4: "Lorem ipsum dolor sit axet consectetur adipisicing."}

我需要得到这个对象,并将其发送到后端,但不知道如何做到这一点。我可以访问选定的答案[2]它将打印“Lorem,ipsumdolor.”,但键可以更改,我尝试使用以下方法获取此对象:

selectedAnswers.value
selectedAnswers.values
...

我不能像“selectedAnswers”那样发送它,我需要以某种方式打开数据并将其作为纯JSON发送

解决方案:

在reactive对象上使用toRaw:

const answers = toRaw(selectedAnswers)

这里就是vue3中setup组合式api中如何定义响应式数据并且修改赋值全部内容了