请问 Vue 里能让一个组件不重新加载吗

2021-03-31 21:17:24 +08:00
 liuy1994g

用 three.js 渲染了一个 300M 的模型,多个页面复用,每次跳转页面就先下载半天,然后再渲染半天,等模型展示出来都几分钟过去了,😂

1232 次点击
所在节点    问与答
8 条回复
lupkcd
2021-03-31 21:31:59 +08:00
keep-alive 试试
或者放最上层,别放路由里面 通过代码去控制展示
TomVista
2021-03-31 22:04:49 +08:00
"多个页面复用",你这个本质上不是组件缓存的问题

1.离屏 canvas ,兼容性比较差. 解决渲染速度问题
2.indexDb 把 300M 存下来,读本地 解决下载问题
TomVista
2021-03-31 23:02:59 +08:00
workg
2021-03-31 23:21:39 +08:00
隐藏放到路由外面,需要的时候直接移动到指定 DOM 节点下
jimliang
2021-04-01 00:42:06 +08:00
不是,你下载后可以缓存到内存或者利用浏览器对静态资源的缓存
渲染半天,你可以缓存一下对应的对象
这玩意跟 vue 关系不大,看你怎么封装了
liuy1994g
2021-04-01 01:32:17 +08:00
@workg 有想到这个做法,可是尺寸难调整
murmur
2021-04-01 08:08:11 +08:00
多个页面复用,每次跳转页面就先下载半天,然后再渲染半天

这个跟 vue 没关,除非你这东西在 iframe 里,其他地方加载 iframe 里的东西不动
imjamespond2020
2021-04-01 09:06:32 +08:00
加 http cache

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/767006

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX