1
q397064399 2016-11-07 07:14:30 +08:00
没有主流做法,能解决问题的做法是最好
个人建议第 2 种,因为网站加载是有延迟的,除非你遍地 CDN 否则你的用户肯定有几率会看到{{}}之类的玩意(手动 DOGE ) 话说浏览器走到今天 真是赶鸭子上架,不仅折腾人 还折腾业务逻辑 |
2
q397064399 2016-11-07 07:16:13 +08:00
我自学完 SpringMVC Mybatis vuejs 之后 做的一个项目就是个小论坛,采用的第一种加载方案,
由于 Ajax http 请求的延时,用户会看到{{}}之类的玩意 |
3
murmur 2016-11-07 07:48:22 +08:00
这个架构把 redux 去了估计上手会更快一些
|
4
66beta 2016-11-07 08:43:01 +08:00
用 React 了,前后分离啊,那么后端是不是 SpringMVC 、是不是 JAVA 并不重要啊
|
5
blackboom 2016-11-07 09:01:35 +08:00 via Android
接手的几个项目都是二次加载(首页白屏)的方式,然后 index 就交给 cdn 或者 nginx 好了。
|
6
admol 2016-11-07 09:59:37 +08:00
倾向于第一种
1. 既然 前端页面向后端发送一个 Ajax 请求来异步地获取数据进行渲染, 那么我觉得这个页面的数据应该是用户不需要立马就需要看见的, 可能需要点击一个展开或者点击一个下拉框之类的再去 ajax 加载数据 , 如果是需要一进入就需要展示的数据也就没必要再 ajax 去异步请求一次了.... 2.还需要在 js 写``request.getAttribute(xxxxx)``这样的代码实在是麻烦, 而且还要手动放 request 里面扔数据, 觉得实在是没必要... 关于 1L 说的出现`{{}}`问题, 用 velocity 模版引擎不会出现这样的问题 |
7
saturnast 2016-11-07 10:10:34 +08:00
@q397064399 其实不是浏览器的问题,浏览器现在越来越按照标准来了,有问题的是前端社区的发展,太浮躁了。
|
8
Doubear 2016-11-07 10:23:04 +08:00 via iPhone
有加载延迟,做个加载动画提示就行了,等数据加载完,再进行渲染
|
9
EXDestroyer 2016-11-07 10:27:06 +08:00
@q397064399 {{}}这种东西现在都会用 ng-cloak/v-cloak 来做默认隐藏处理吧
|
10
q397064399 2016-11-07 10:52:30 +08:00
@EXDestroyer 好吧 我用的 vuejs 菜鸟没找到解决方案吧
|
11
paragon 2016-11-07 11:06:55 +08:00
最后那个 装个 spring dev tools 可破~
|
13
forbreak 2016-11-07 11:53:15 +08:00
{{}} 这种东西,前端处理一下就好了,加动画,加默认值。很多种方式解决,这个锅不应该有 ajax 来背。而且 既然前后端分离的话,就不要再用 jsp 页面了。全部静态页面搞起来。
|
14
gdong 2016-11-08 01:10:51 +08:00
都 React+Redux + Webpack 了,已经可以前后端分离了,可以直接通过接口返数据
|