前端方面

我用 Backbone.js 做过前端的开发,印象里就是后端按模型对象的属性把 JSON 数据发过来,我写在模板里渲染就好了

  • 模板加载( underscore.js )
  • 建立模型
  • 渲染视图
  • 路由,事件等

后端方面

这两天接触 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 就挺没用的了阿?


当然了,我所说的很有可能不对,我就是想知道我哪里理解的有问题。我的问题如下:

  • Backbone 配合 Nodejs 的时候 Backbone 里面的 Model 模块和 render 可以直接被 express 里的类似模块替代?
  • Backbone 和 Nodejs 合拍吗?哪种情况下适合搭配使用呢?
  • Backbone.js 为什么适合单页开发?因为它的路由?

    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 框架。

Backbone.js 和 Nodejs 的一些共同点搞不清楚的更多相关文章

  1. AngularJS 、Backbone.js 和 Ember.js 的比较

    1 介绍 我们准备在这篇文章中比较三款流行于Web的“模型-视图-*”框架:AngularJS.Backbone和Ember.为你的项目选择正确的框架能够对你及时交付项目的能力和在以后维护你自己代码的 ...

  2. MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js、Vue.js 概念摘录

    注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是 ...

  3. 我对Backbone.js的一些认识

    backbone.js已经不是当前最流行的前端框架了,但是对于我而言,依然具有比较好的学习价值.虽然目前来说,react,vue等mvvm框架非常火热,但是感觉自身还不到去使用这种框架的层次.这些技术 ...

  4. 比較Backbone.js, Angular.js, Ember.js, Knockout.js 心得

    還記得第一次寫網站的時候,我無意間寫成了 SPA(single page application),當時還沒有SPA這個詞,後來因為廣告主需要不同 url location 頁面的廣告展示,只好把部分 ...

  5. Backbone.js的技巧和模式

    Backbone.js的技巧和模式 Backbone.js的技巧和模式   本文由白牙根据Phillip Whisenhunt的<Backbone.js Tips And Patterns> ...

  6. Backbone.js 1.0.0源码架构分析(一)

    Backbone.js 是javascript 语言中 首个实现MVC设计模式的类库,API接口方法重度依赖于underscore.js,DOM选择器则依赖于jQuery.js或者zepto.js. ...

  7. Backbone.js应用基础

    前言: Backbone.js是一款JavaScript MVC应用框架,强制依赖于一个实用型js库underscore.js,非强制依赖于jquery:其主要组件有模型,视图,集合,路由:与后台的交 ...

  8. Backbone.js学习之Backbone.View(视图)

    Backbone.js为复杂WEB应用程序提供模型(models).集合(collections).视图(views)的结构.其中模型用于绑定键值数据和自定义事件:集合附有可枚举函数的丰富API: 视 ...

  9. 前端mvc框架backbone.js入门[转]

    原文地址:http://www.cnblogs.com/zhjh256/p/6083618.html 关于backbone.js的优缺点,这里就不详谈了,网上关于这方面的讨论很多了,而且各种框架之所以 ...

随机推荐

  1. Linux - crontab的创建以及注意事项

    [root@www ~]# crontab [-u username] [-l|-e|-r] 选项与参数: -u :只有 root 才能进行这个任务,亦即帮其他使用者创建/移除 crontab 工作排 ...

  2. 实现去哪儿来回机票选择的view

    最近有个控件是实现和去哪儿和阿里旅行的app的选择日历效果,反编译没有效果的情况下我自己实现了个,大致的原理是: 上面是产品需要实现的效果,我看了下不就是一个ListView+gridView就能实现 ...

  3. Docker 单主机网络

    PS:欢迎大家关注我的公众号:aCloudDeveloper,专注技术分享,努力打造干货分享平台,二维码在文末可以扫,谢谢大家. 当容器逐步向容器集群,容器云技术演进的时候,一个不得不面对的问题就是各 ...

  4. angularjs系列之轻松使用$q进行异步编程

    第一部分关于js中的异步编程 异步编程简单的说就是你写了一段代码,但他不会按照你书写代码的顺序立即执行,而是等到程序中发生了某个事件(如用户点击了某个按钮,某个ajax请求得到了响应)才去执行这段代码 ...

  5. Mongodb3.6 快速入门(一)

    一.安装 官网下载地址 文章中用的3.6community server 64 位. 安装完成后的目录如下: 二.启动Mongodb 有多种方式可以启动Mongodb,但在实际项目中,主要还是通过配置 ...

  6. MVC3 项目总结

    验证 Validation 多样化验证规则 http://www.cnblogs.com/xling/archive/2012/07/11/2587002.html 最常见的验证方式是:在实体的属性上 ...

  7. profile bashrc bash_profile之间的区别和联系

    profile bashrc bash_profile之间的区别和联系 博客分类: Linux   执行顺序为:/etc/profile -> (~/.bash_profile | ~/.bas ...

  8. Android Gradle 自定义Task 详解

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/76408024 本文出自[赵彦军的博客] 一:Gradle 是什么 Gradle是一 ...

  9. RabbitMQ学习总结

    关于RabbitMQ是什么以及它的概念,不了解的可以先查看一下下面推荐的几篇博客 https://blog.csdn.net/whoamiyang/article/details/54954780 h ...

  10. SOFA 源码分析 —— 过滤器设计

    前言 通常 Web 服务器在处理请求时,都会使用过滤器模式,无论是 Tomcat ,还是 Netty,过滤器的好处是能够将处理的流程进行分离和解耦,比如一个 Http 请求进入服务器,可能需要解析 h ...