我用 Backbone.js 作过前端的开发,印象里就是后端按模型对象的属性把 JSON 数据发过来,我写在模板里渲染就行了html
这两天接触 Nodejs ,本来是想前端用 Backbone 作结构,而后用 Nodejs 做服务器开发(用的 express 框架),链接数据库传数据给前端,可是在网上查资料的时候发现用 Nodejs 的模板写前端的话,在渲染的地方好比前端
app.get('/', function (req, res) { res.render('index', { title: 'Hey', message: 'Hello there!'}); });
render 的第二个参数就跟 Backbone 里模型的属性感受上很像,用 Mongoose 链接 Mongodb 的话也能够直接加载数据。 那是否是用 Backbone 配合 Nodejs 的时候 Backbone 里面的 Model 模块和 render 就不须要使用了?那我感受 Backbone 就挺没用的了阿?数据库
固然了,我所说的颇有可能不对,我就是想知道我哪里理解的有问题。个人问题以下:express
segmentfault:res.render是服务端返回的,Node拿到数据,结合模板引擎(ejs等)渲染好html返回给浏览器,剩下的客户端的交互才是backbone来处理的,随后的交互就不是res.render了,而是res.json等直接返回纯数据交给Backbone渲染。
v2ex:就把 NodeJS express 看成普通的服务端,和 Python Flask 、 PHP 同样。你要普通的服务端渲染页面,就用 express 的模板渲染( res.render );你要用前端框架( Backbone )渲染页面, express 就只要返回数据,例如 JSON ( res.json )。
另外你的前端构建可让 NodeJS 作自动化,好比打包、压缩( minify )等。
Backbone 做为一款前端 MVC 框架,固然适合单页开发。相似的还有 Angular 、 React 等 MVVM 框架。