zhangyuang / ssr

A most advanced ssr framework support React17/React18/Vue2/Vue3 on Earth that implemented serverless-side render specification.
http://doc.ssr-fc.com/
MIT License
2.61k stars 284 forks source link

两个页面的fetch.ts返回数据混合 #64

Closed Rainer-Yu closed 3 years ago

Rainer-Yu commented 3 years ago

plugin-vue3/src/entry/client-entry.ts image fetch.ts 返回的数据合并进 asyncData 使用的是reactive 不必添加 .value包装 也不会丢失响应性

在 vue3当中 ref() 响应式 是带有 .value 包装的 reactive() 是通过proxy 实现的 无需 .value包装 带有 .value 还会在后续取值的操作上 重复写出 带有 .value 的代码

zhangyuang commented 3 years ago

那肯定是得加的啊,你除了考虑fetch.ts返回,还有直接修改asyncData的可能。如果我直接把asyncData赋值了一个新的obj,响应性就没了。如果加了.value就算你把整个.value赋值新的obj,响应性仍然存在

zhangyuang commented 3 years ago

ref: image

Rainer-Yu commented 3 years ago

ssr-plugin-vue3\src\entry\client-entry.ts image

现在的问题是 切换页面,之前页面fetch.ts返回的数据还存在于 asyncData.value 里面,导致两个页面的fetch.ts返回数据混合,是有意这样设计 还是?