前后端分离,一定要 vue?

2020-03-13 13:54:08 +08:00
 w292614191

能找到的资料全是 vue 做前端,难道没有 vue 就不能分离了?我知道 vue 是趋势,但不是必须吧。

我们之前是一个 iframe 结构的 springboot 项目,并没有分离进行,现在有想法看了下全是 vue 做前端。但是我们已经花了好几万买了 miniui 这个 web 控件,功能也满足后台类管理系统。

所以想咨询下是否有:js 之类+spirngboot 实现的前后端分离项目案例。

6598 次点击
所在节点    问与答
54 条回复
yingxiangyu
2020-03-13 13:56:21 +08:00
前端用什么技术都可以吧,没必要限制到 vue,就是 vue 简单上手快,所以推荐的多
woodensail
2020-03-13 13:57:03 +08:00
前后端分离也不是前端 MVVX 兴起之后才有的概念啊,以前用 jQuery 的时候不照样前后端分离搞得好好的。
pianjiao
2020-03-13 14:04:18 +08:00
前端什么都可以啊 就是 html + js 也行啊 vue 只是更好开发、更方便、省事而已
ESeanZ
2020-03-13 14:04:30 +08:00
jQuery 一把梭。 走 ajax
minglanyu
2020-03-13 14:05:30 +08:00
"花了好几万买了 miniui 这个 web 控件"

不是很懂
w292614191
2020-03-13 14:10:49 +08:00
@minglanyu 就是一个 web 控件。

@ESeanZ
@woodensail
@yingxiangyu
@pianjiao

有例子吗?不是很懂菜单 url 怎么实现的。
sarices
2020-03-13 14:14:22 +08:00
如果是公司习惯用什么就什么吧,框架成本很高的
loading
2020-03-13 14:16:33 +08:00
jQuery 也可以
JK9993
2020-03-13 14:20:29 +08:00
vue 之类的框架有配套的前端路由库,jquery 的话感觉不太需要这个路由管理(也不太了解),对 url 管理要求不高的话可以 nginx 一把梭。
jswh
2020-03-13 14:20:46 +08:00
最近又开始些模板了,主要是一些简单页面还要前后分离感觉切来切去太麻烦,反正一次编码很少改动。
Hoshinokozo
2020-03-13 14:21:09 +08:00
前后端分离指的是后端提供 Model,View 和 Controller 由前端控制,跟 vue 并没有绝对的关系,vue 只是一个比较新的 View 框架而已,用 VM 取代了 Controller,不用手动操作 DOM 了
ipwx
2020-03-13 14:23:07 +08:00
因为 vue/react 这两大框架把前后端分离架构中,很多你用 jQuery 需要自己重新造的轮子给你造了一遍了啊。因此没多少人用 jQuery 做前后端分离不是正常的么。
wangxiaoaer
2020-03-13 14:24:06 +08:00
好好理解什么是前后端分离就不会提问的时候起这么找抽的标题了。

1 我们最初做分离是用的 jquery backbone 一把梭。

2 现阶段 vue 占比较多,因为他上手快。
wangxiaoaer
2020-03-13 14:25:58 +08:00
@Hoshinokozo 你这解释笑死我了。

后端就没有 Model view 了???? Json 不是 view 吗?

前端就不要 Model 了???
w292614191
2020-03-13 14:30:28 +08:00
@ipwx 也就是说,如果有一些其他的控件可以实现,道理是一样的。并不是必须 vue 来封装这些轮子。
@wangxiaoaer 用 jquery 的时候,怎么实现的 url 菜单呢?类似 src/user/list.html,然后部署到 nginx,路径就会映射了?然后数据库也这样存储的吗?
ipwx
2020-03-13 14:41:21 +08:00
@w292614191 在 Vue 和 React 里面,URL 映射可能是 JS 框架做的而不是后端做的。后端就只有一个页面 route,所有的页面请求都返回同一个 .html。然后提供一堆 JS API。这样可以实现无刷新的页面响应。

再比如双向数据绑定( HTML 控件用户的输入和你 JS 内部的对象数据双向绑定),全局状态管理。。。总之现代 JS 框架做了好多很复杂的工作,让你写大型复杂页面变得很简单。

而且你还能用各种 JS 的辅助库,进一步提升你的开发效率。更兼有 Webpack 依赖打包,还有 Babel 把最新的 JS 语法转译成主流浏览器能支持的 JS 代码,或者 CSS post-processor。诸如此类的一整套工具链,是 jQuery 时代要花很多人力才能摆平的事情。
----

总而言之用 jQuery 不是不行,而是要花大量经历把现代工具链已经提供给你的东西重新做一遍。当然一个 specific 的项目可能就需要重写一部分东西,但也是不小的工作量了。比如适配各个版本的浏览器、手动双向数据绑定,后端 route 之类的。
ipwx
2020-03-13 14:43:49 +08:00
再比如你说的菜单 URL。在很多 Vue 和 React 的 UI 库里面,菜单项和前端 route 的配置是自动绑定的。也就是说你只要管写个菜单,写一堆 Vue 或者 React component,用 route config 把这些 component 组装成你的 web app,菜单自动会根据 route url 来显示不同状态。这在 jQuery 时代需要手动处理。
Sendya
2020-03-13 14:44:21 +08:00
2013,14 年那阵子,我还在用 Knockout 做前后分离。 那时候连 Vue 是什么都不知道
Procumbens
2020-03-13 14:44:55 +08:00
当然不一定要用 vue (还有 React )
国内是 vue 较多 但是国外基本都是 React
w292614191
2020-03-13 14:50:04 +08:00
@ipwx vue route 好像是映射吧,比如吧 user -> src/user/userList 是这种概念吗?

如果我就是普通的写个超链接指向 src/user/userList,那么部署到 nginx,这样是可以访问的吗?

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

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

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

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

© 2021 V2EX