前后端分离,一定要 vue?

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

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

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

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

6908 次点击
所在节点    问与答
54 条回复
wangxiaoaer
2020-03-13 14:50:34 +08:00
@w292614191 js 有专门的路由库。
wangxiaoaer
2020-03-13 14:52:33 +08:00
@w292614191 楼上说的很明白了,但鸡同鸭讲。
你还是先弄明白 js 路过的概念和实现原理再回过头来思考下。
ipwx
2020-03-13 14:52:53 +08:00
@w292614191 不对。比如你制定的是 /user/* -> src/user/userList,那么你需要让 nginx 把所有 /user/* 指向 index.html
ipwx
2020-03-13 14:54:08 +08:00
后端的源代码文件结构和前端的 URL 可以完全没关系,比如 Python 和现代 PHP 框架。当然,可能楼主你还停留在 PHP4 时代,那么你可能需要补的不仅是现代 JS,还有现代 PHP。

前端也是一样,URL 映射关系只是一组规则,和源代码结构不相干。
VictorJing94
2020-03-13 15:05:13 +08:00
这个要点在后端吧
passerbytiny
2020-03-13 15:11:22 +08:00
前后端分离有两种:完全分离和 MVC 分离。

如果是前者的情况下讨论前端,那么后端就不用提了,后端只要提供 RESTful 接口即可,是 java、php 还是 asp 都无所谓。这个时候前端当然不一定非要用 vue,还可以是 rectJS、angularJS、extJS 等各种框架。这时候如果不一定非要网页端的话,用 Xamain 做个 UWP/Android/Ios 全套 APP 也不是不可行。但是,只用原生 JS 和 Jquery 是铁定不行的,你要非这样做也能做出来,但那成本可不是一般的高。

如果是后者,本质上是后端的分层开发,并未完全分离。以 springboot 为例,C 和 M 全部在 springboot 之后,即全在后端,这基本上限制了 V 的发挥,此时的 V 只能是 HTML/模板+少量的 JS,这个时候 vue 这种半框架还可以用用,***JS 这种全框架就是一个都不能用的。这时候你用原生 JS/Jquery 是可以的,但是你要项目案例是很难有的,因为 springboot 跟 jquery 不是一个年代的,用 Jquery 的可能再用旧 Spring 甚至 JSP,用 springboot 的再用 vue 或类似半框架。

结论,老老实实学 vue 吧。
fengbjhqs
2020-03-13 15:43:07 +08:00
好奇,jQuery MiniUI 需要买吗?

感觉你们想让后端把前端的事情做了?
minglanyu
2020-03-13 15:43:49 +08:00
前后端分离是趋势。
不用纠结用什么框架,也不用带着情绪,不懂就去学一下,尝到甜头就真香了。

vue,react,angular 这几种框架只不过是一个开源的前端实现选择,这么受欢迎是有它的道理的。
能用原生 js 写,jquery 写当然也 ok,本质上都是 DOM 解析,CSS 渲染,表格展示数据,表单提交,请求发送,响应处理等等,复杂的重依赖前端的内容就不提了,canvas,node 生态,vue 生态很多内容,讲不完的。

不过也不知道贵司什么样的情况 按需求去选型是最重要的。

vue 项目最终打包出的是个 dist 包,其中包括 html,css,js,dist 包中的文件可以指向你的服务端系统接口,也可以指向你的多个服务端系统接口。

没你想的那么复杂
minglanyu
2020-03-13 15:47:35 +08:00
入门 demo 级别的前端 vue+后端 spring boot 项目,随便看看吧: https://github.com/arya-spring-vue

(讲道理在 v 站发出我都不好意思把这入门辣鸡 demo 拿出来,不过还是给你看看吧,兴许有帮助
w292614191
2020-03-13 16:31:59 +08:00
@wangxiaoaer 你说的这个 js 路由,更多的是指单页面应用吧,只在一个页面做操作。

如果是 iframe 加载一个业务界面呢?
w292614191
2020-03-13 16:32:44 +08:00
@ipwx
@fengbjhqs
前端通做,是后台类系统,并没有特别炫酷的技能。
sagaxu
2020-03-13 16:59:50 +08:00
新项目建议都上 vue 或 react,有一大把免费的开源框架可用,扔掉 miniui 算是及时止损。
wunonglin
2020-03-13 17:03:28 +08:00
angular 也行
fengbjhqs
2020-03-13 17:36:36 +08:00
@w292614191 #31 在不考虑很高的性能,vue/react,大概率比 js 效率高太多了,
ipwx
2020-03-13 17:48:17 +08:00
说起管理系统,不试一下 vue-element-admin 么。。。。
areless
2020-03-13 18:12:07 +08:00
08 年那阵子的事情,一个一起做项目的突然对我说,你们写前端的怎么不用 js 直接生成 Dom 并且绑定数据,我认为这是一种后端思维,到现在仍然无法接受前端的现状
ffxrqyzby
2020-03-13 19:01:04 +08:00
建议从机器码搞起
liuxey
2020-03-13 19:24:39 +08:00
miniui 也是个不错的前端框架,不过是上个时代的产物,和 extjs 类似,你们要是用的熟,不换也行,但是人的问题你们要考虑,不然老项目维护、新项目开发找不到人就尴尬了
cedoo22
2020-03-13 21:20:05 +08:00
变量一多,没办法 只能上框架。
现在前端要匹配 ios 安卓 各种机型、pc 各种浏览器的兼容性,不同分辨率,全靠 html 和 js 简直要疯。
ajaxfunction
2020-03-13 22:00:31 +08:00
页面上涉及到复杂操作计算的时候,例如购物车计算价格,批量删除订单这些等, 用 vue
如果只是单纯的页面偶尔交互 用 jquery

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

https://tanronggui.xyz/t/652485

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

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

© 2021 V2EX