Maison > Questions et réponses > le corps du texte
前端需要动态显示数据, 采用ajax方式获取, 要展示的dom是在后台生成好再返回好还是只通过ajax获取要显示的数据, 然后前端由js生成dom好, 想知道大家是怎么做的, 刚接触, 比较生疏 : )
迷茫2017-04-10 17:03:10
直接返回dom已经是比较古老的解决方案,这种方式对前端代码的维护性和效率都会有所降低,不利于前后端分离。
目前通过ajax
请求直接返回json
对象数据的方法是市场上的主流,前端有相当多的方法和框架去对这些数据进行处理并渲染,以前有jQuery
通过操作dom去渲染,现在有React.js
,AngularJS
等新兴框架来对数据进行绑定,通过这种方式处理的页面一般称作SPA
页面(Single Page Application,单页面应用)。
当然,具体方法的选择还是视你的业务场景而定了。
PHP中文网2017-04-10 17:03:10
这主要取决于你前后端是否分离 如果前后端不分离 那么反正都是后端直接渲染 没什么可说的
如果分离 那么取决于你前段采用什么技术 如果是用jquery这种 对数据要求不高的 那么后端只给数据 前段去负责生产dom与渲染
如果采用的是angularjs这种对数据要求较高的框架 那么酌情 对于一些复杂的或者同一接口和数据绑定但结果集变化较大不好绑定的 可以考虑后端直接生成dom给前段
在任何时候 优先考虑的都应该是后端只给数据 由前段去渲染 这样既提高了接口的复用性 又降低了维护成本 把一些事情放到前段用户浏览器上去做也可减轻后端压力提高效率
PHP中文网2017-04-10 17:03:10
后端输出 JSON,给前端来 ajax 获取后生成 DOM 比较好。
因为后端开发人员并不知道前端需要将数据拼成什么样子的 DOM 结构啊,如果后端渲染好了再给前端,那么如果前端想要改个什么东西是不是就只有正则替换了,那会很痛苦的。
迷茫2017-04-10 17:03:10
我说一下我们的实现方式,看能不能给你提供点帮助:
我们后端是PHP,没有做SPA,而且是移动端,所以页面都是PHP渲染的,ajax请求的页面也是先PHP把逻辑都先判断完再给我们前端,我们就只负责显示和一些常规的JS交互;包括翻页,也都是PHP把下一页请求的url输出给前端,我们只需要拿到这个url进行ajax请求然后append就行咯;
这样的话,其实对于前端来说工作量减少了很多,而且都是服务端渲染,效率也高很多;
虽然现在都在说前后端分享,可是个人觉得也应该跟据项目实际来定,后端给你JSON,前端拿到JSON然后拼接是多么的蛋疼(如果不用其他框架的话);
所以呢,从你的问题看,你们前后端也没有分享,所以,可以服务端给生成好,然后前端只ajax显示~~