javascript - 使用node如何进行前后台分离?
问题描述
最近使用express+ jade + mongodb做了个小练习,使用的jade模板引擎在渲染数据时需要在页面代码中嵌入js逻辑代码,个人很不喜欢这种开发模式,所以想问一下使用node如何实现前后台的完全分离?
问题解答
回答1:前后端分离页面中也得嵌入 js 代码啊,前端要跑的逻辑肯定还是得跑,express + jade 已经做到了服务端渲染,通过数据渲染模版产生前端内容,前端再跑相对应的前端逻辑,这样已经算是完全分离了。
回答2:让node只负责后端,jade可以扔掉了。前端用原生js进行ajax请求获取数据,再进行相应的逻辑处理即可
回答3:通过 express + mongodb 可以将 URL 映射到数据库———— 换言之,URL是数据的指针。
在 express + mongodb 技术上再加一层 jade 意味着,数据要流经 jade,跟模版耦合成 html 数据流 之后通过response返回给客户端
前后端分离,在于从数据库里取出来的数据是直接返回在 response 或者经过模版引擎处理后再返回。
( 体会下: res.json 和 res.render )
回答4:可以参考一下淘宝前后端分离实践
细节有待商榷,但是大体模式都讲清楚了。如它里面所说的,要看你要的“前后端分离”分离成怎么样。以及你对前端这个东西的理解了。
回答5:jade模板换成html,前端用ajax就ok了吧。。。(前端相当于静态资源,nodejs可以看作为一个web server)
相关文章:
1. java - mybatis怎么实现在数据库中有就修改,没有就添加2. MYSQL新建用户设置可以远程访问的问题3. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题4. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)5. angular.js - angularjs的自定义过滤器如何给文字加颜色?6. javascript - 用表单提交两个时间段请求后台返回对应数据时出现的一些问题!7. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?8. mysql - SQL操作时间的函数?9. mysql - 我的myeclipse一直连显示数据库连接失败,不知道为什么10. mysql 为何insert的时候会有lock wait timeout 异常
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)