版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://www.blogbus.com/monw3c-logs/217636180.html

先说一下Backbone的执行顺序:
路由(Backbone.Router)-> 模型(Backbone.Model)-> 视图(Backbone.View)

路由告诉你要去哪里。

  1. App.Controllers.Routes = Backbone.Router.extend({
  2. routes: {
  3. "!/hello" : "hello",//使用#!/hello驱动路由 这里会去分行下面hello这个函数
  4. },
  5. hello : function(){
  6. //新建一个模型,模型向后端请求更新内容成功后根据模型渲染新页面
  7. var helloModel = new App.Models.Hello; //调用模板
  8. helloModel.fetch({
  9. success: function(model){ //成功拿到数据,调用视图渲染页面
  10. var helloView = new App.Views.Hello({model: model});
  11. helloView.trigger('change'); //绑定change事件
  12. }
  13. });
  14. }
  15. });

模型告诉该干些什么。这里是去拿数据,set是提供一个设置初始数据

  1. App.Models.Hello = Backbone.Model.extend({
  2. url: function() {
  3. return '/index/test'; // 获得数据的后台地址。
  4. },
  5. initialize: function() {
  6. this.set({'message':'hello world'}); // 前端定义一个message字段,name字段由后端提供。
  7. }
  8. });

最后你就知道了有什么了

  1. App.Views.Hello = Backbone.View.extend({
  2. el: "body", //在哪里显示
  3. template: $("#hello-container-template").html(), //获取模板 模板是用Mustache
  4. initialize: function(options){
  5. this.options = options;
  6. this.bind('change', this.render);
  7. this.model = this.options.model;
  8. },
  9. render: function(){ // render方法,目标只有两个:填充this.el,返回this以便链式操作。
  10. $(this.el).html(Mustache.to_html(this.template,this.model.toJSON()));
  11. return this;
  12. }
  13. });

上面就是MVC的核心了,下面就是一个管理着"视图/控制/模型"的全局类

  1. var App = {
  2. Models: {},
  3. Views: {},
  4. Controllers: {},
  5. Collections: {},
  6. initialize: function() {
  7. new App.Controllers.Routes();
  8. Backbone.history.start() // 要驱动所有的Backbone程序,Backbone.history.start()是必须的。
  9. }
  10. };

调用,完事啦。。。

  1. App.initialize();

原文地址:http://juntype.com/junlab/99.html

Backbone案例的初略理解的更多相关文章

  1. Spring简单的小例子SpringDemo,用于初略理解什么是Spring以及JavaBean的一些概念

    一.开发前的准备 两个开发包spring-framework-3.1.1.RELEASE-with-docs.zip和commons-logging-1.2-bin.zip,将它们解压,然后把Spri ...

  2. Hadoop架构的初略总结(2)

    Hadoop架构的初略总结(2) 回顾一下前文,我们总结了以下几个方面.我们为什么需要Hadoop:Hadoop2.0生态系统的构成:Hadoop1.0中HDFS和MapReduce的结构模型. 我们 ...

  3. Hadoop架构的初略总结(1)

    Hadoop架构的初略总结(1) Hadoop是一个开源的分布式系统基础架构,此架构可以帮助用户可以在不了解分布式底层细节的情况下开发分布式程序. 首先我们要理清楚几个问题. 1.我们为什么需要Had ...

  4. FireMonkey 结构性初略分析

    Delphi 下的FireMonkey,很好地实现了 DirectUI与跨平台.学习了解他,对DirectUI编程及项目的跨平台实现有一定帮助.虽然作为开发者个体,并不需要了解太多这些东西,只要求拿来 ...

  5. React组件之间通过Props传值的技巧(小案例,帮助体会理解props、state、受控组件和非受控组件等)

    本文重要是根据react小书上的一个很简单的例子改编的,加上自己的学习理解,希望可以通过实际案例让大家对概念有更清晰的理解,当然也希望能一块学习. import React,{Component} f ...

  6. backbone案例

    http://www.kuqin.com/webpagedesign/20120807/324101.html http://udonmai.com/code/todos-backbone%E6%A1 ...

  7. 我对Backbone中url属性的理解

    Model中有一个url属性,而且有一个urlRoot属性. Collection中也有一个url属性. // 这是Model中的url方法 url: function() { var base = ...

  8. 通过案例对SparkStreaming透彻理解三板斧之二

    本节课主要从以下二个方面来解密SparkStreaming: 一.解密SparkStreaming运行机制 二.解密SparkStreaming架构 SparkStreaming运行时更像SparkC ...

  9. 通过案例对SparkStreaming透彻理解三板斧之一

    本节课通过二个部分阐述SparkStreaming的理解: 一.解密SparkStreaming另类在线实验 二.瞬间理解SparkStreaming本质 Spark源码定制班主要是自己做发行版.自己 ...

随机推荐

  1. 转载:常见EXE文件反编译工具

    PE Explorer V1.99 R5 绿色汉化特别版_强大的可视化汉化集成工具 功能极为强大的可视化汉化集成工具,可直接浏览.修改软件资源,包括菜单.对话框.字符串表等: 另外,还具备有 W32D ...

  2. 如何在word中写出赏心悦目的代码

    短学期的VHDL终于结束了,虽然代码并不是很难,但是框框条条的规矩很多,也算折腾了一会,最后要写一个技术手册,结题报告类似物.考虑到word毕竟套主题比较方便,所以也就没有用LaTeX写,但是很快就发 ...

  3. Windows资源文件里VarFileInfo的Translation(EXE的语言描述信息)

    /* The following line should only be modified for localized versions. */ /* It consists of any numbe ...

  4. cocos2d-x特效之CCControlPotentiometer

    在test示例下面,有一个关于此功能的代码,实现的效果如下: 通过拉动可旋转的按钮,从而改变所代表的值,这个效果的确是很棒的,但,和我的需求有一些差别,先贴上我实现的效果吧               ...

  5. mysql5.5 无法创建实例,error 16001

    今天想用jdbc做个小程序,结果发现好久不用的mysql不好用了,我装的是社区版(win7)环境下,按理说不可能出问题,找了一堆解决方案都没解决,准备重装的时候想把mysql服务停了,直接在dos输入 ...

  6. python高级编程之选择好名称:命名指南

    # # -*- coding: utf-8 -*- # # python:2.x # __author__ = 'Administrator' #命名指南 #一组常用的命名规则可以被应用到变量,方法函 ...

  7. handsontable的核心方法

    1.为handsontable添加钩子方法 addHook(key,callback):key为钩子方法名 <span style="font-size:18px;"> ...

  8. 用window.print()打印指定div里面的内容

    用window.print()打印指定div里面的内容 今天客户让添加个打印证照功能,直接用window.print()打印的是整个页面,而用以下方法就可以只打印证明了 <!--window.p ...

  9. 【桌面虚拟化】之三 Persistent vs NonP

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 在[桌面虚拟化]之二类型及案例中我们探讨了桌面虚拟化的两种架构,HostedVirtual Desktop (VDI) 和 Publ ...

  10. hbase权威指南学习笔记--架构--存储

    HBase主要处理两种文件:预写日志(Write-Ahead Log,WAL),实际的数据文件. 一个基本的流程是客户端首先联系ZooKeeper子集群查找行健数据所在的region服务器名.(通过Z ...