HappyCrazy 发表于 2022-12-6 09:36

vue3的ObjectRefImpl类型取值问题

本帖最后由 HappyCrazy 于 2022-12-6 09:42 编辑

如图:
假设返回数据赋给变量a
数据回来时ObjectRefImpl类型,在template中使用{{a}}可直接显示数据,


在script中console.log(a.value、a.value.value),
nextTick(()=>{ console.log(a.value、a.value.value)// undefined })均无法获取数据。
console.log(a)打印出来如下图




pzx521521 发表于 2022-12-6 10:24

a.value

被遗忘的路人 发表于 2022-12-6 10:40

a.map(item => {
    console.log(item.value)
})

HappyCrazy 发表于 2022-12-6 10:55

pzx521521 发表于 2022-12-6 10:24
a.value

a就是类型为的ObjectRefImpl的那个对象

判判~ 发表于 2022-12-6 13:19

本帖最后由 判判~ 于 2022-12-6 13:23 编辑

const a = ref<ObjectRefImpl[]>()

请求是异步的。监听变化试试

watch(a, (newVal: ObjectRefImpl) => console.log(newVal))

判判~ 发表于 2022-12-6 13:20

判判~ 发表于 2022-12-6 13:19
请求是异步的。监听变化试试



这这这。。。。markdown 怎么这样

莫思莫念 发表于 2022-12-6 14:46

看图片中的 console 你 a.value 这个value 是浅色
深色属性代表普通 key
浅色是gtter属性 不能直接调用

hscxdesign 发表于 2022-12-6 18:37

这个是不是需要JSON.parse() 转义。

wang114430 发表于 2022-12-7 12:46

看看我的例子 https://codesandbox.io/s/pedantic-bird-7orni3?file=/src/components/HelloWorld.vue
页: [1]
查看完整版本: vue3的ObjectRefImpl类型取值问题