Vue 一个系统一个实例不就够了吗,什么情况需要多个实例

2023-08-02 13:13:04 +08:00
 coderMonkey
后端开发,最近在学习前端,Vue 里面不是一个实例就够了吗,只要挂载一个宽高 100%的根节点,后面页面都在这个根节点上变化不就好了吗

看了下公司的项目,一个页面就是一个根节点,有点不能理解为啥要这样做
3329 次点击
所在节点    程序员
28 条回复
Bingchunmoli
2023-08-02 13:18:03 +08:00
我遇见些 html 的每个页面 new 一次 Vue 但后来的公司都是脚手架至少总体一个
LandCruiser
2023-08-02 13:19:40 +08:00
有外部系统引用你们的系统
coderMonkey
2023-08-02 13:24:41 +08:00
@LandCruiser 引用为啥需要多实例
IvanLi127
2023-08-02 13:28:32 +08:00
怕牵一发而动全身的情况下?你这个好像不算多实例,一个页面一个实例,多个 SPA 罢辽。
iOCZ
2023-08-02 13:30:07 +08:00
如果是单页面,那就一个实例。如果多页面,那每个页面一个实例。
tsanie
2023-08-02 13:33:31 +08:00
见过一块 div 一个实例的没有 /doge
coderMonkey
2023-08-02 13:36:38 +08:00
@iOCZ 多页面我也可以一个页面直接做组件啊,然后路由跳转不行嘛
weixiangzhe
2023-08-02 13:43:50 +08:00
弹窗 toast 类渲染到根部吧
imben
2023-08-02 14:20:43 +08:00
多页应用对 seo 更友好些
LandCruiser
2023-08-02 14:27:59 +08:00
@coderMonkey 每个外部系统需要的功能不一样,通过一个统一的入口暴露不合适。
iOCZ
2023-08-02 14:31:04 +08:00
@coderMonkey 你那个叫单页面应用
wednesdayco
2023-08-02 14:37:23 +08:00
这不就是 MPA 和 SPA 的区别= =
HashV2
2023-08-02 14:43:44 +08:00
lisongeee
2023-08-02 14:56:16 +08:00
某些组件库会提供命令式的弹窗/通知方法,这种情况下创建的组件是独立的 vue 实例
nulIptr
2023-08-02 14:59:37 +08:00
建议一步到位了解一下微前端是啥概念。。。
coderMonkey
2023-08-02 15:09:28 +08:00
@wednesdayco @iOCZ @HashV2 学到了,确实是 SPA 和 MPA 的区别,那什么情况下需要在 SPA 中创建多个实例呢,我看 Vue 的官方文档里说的是“想要 Vue 去控制一个大型页面中特殊的一小部分的时候需要创建多个实例”,不是很能理解
obulks
2023-08-02 16:13:45 +08:00
你应该问你们的前端,而不是问我们
molvqingtai
2023-08-02 16:18:36 +08:00
@coderMonkey #16 前端控制路由用一个实例,每个页面一个实例应该是后端控制路由,相当于把 Vue 当高级的 Jquery 使用
learningman
2023-08-02 16:22:39 +08:00
@coderMonkey 现在这个网页已经写好了,100 万行代码,你想用 vue ,你是打算把整个页面全部重写一遍,还是挂一小块先把需要加的新功能给加上?
thinkershare
2023-08-02 16:25:04 +08:00
因为很多软件并不需要 SAP, 而只是仅仅将 Vue 作为一个 View Render Engine 。这种场景下完全可以使用 Vue, 但不使用任何现代化的前端构建工具。我们就有项目这样用过。

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

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

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

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

© 2021 V2EX