《Ember.js实战》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(挪)斯基著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2015
  • ISBN:9787115390011
  • 页数:218 页
图书介绍:Ember.js是现代JavaScript MVC框架代表,本书深入介绍了这一框架的方方面面知识。全书分为三个部分。第一部分引导读者对Ember.js有个概括性认识,并掌握其基础知识点,此部分包含两个示例程序;第二部分涉及Ember.js实战的几个关注点,如Ember Data、自定义组件以及测试;第三部分讨论Ember.js的高级主题,如认证、运行循环和打包部署。

第一部分 Ember.js基础 2

第1章 发力雄心勃勃的Web应用 2

1.1 Ember.js适用场景 2

1.2从静态页面到Ajax、再到全功能Web应用 4

1.2.1异步Web应用的兴起 5

1.2.2 Ember.js模型 6

1.3 Ember.js概览 6

1.3.1 Ember.js特性 7

1.3.2 Ember.js应用程序结构 7

1.4第一个Ember.js应用程序:记事本应用 9

1.4.1记事本应用开发起步 11

1.4.2创建命名空间与路由器 13

1.4.3定义应用程序路由 14

1.4.4创建并列出事项 16

1.4.5选择并查看单条事项 19

1.4.6删除事项 23

1.5小结 28

第2章 Ember.js风格 29

2.1绑定对象 30

2.2自动更新模板 33

2.3计算属性 35

2.4观察者模式 38

2.5 Ember.js对象模型 39

2.6 Ember.js实现各层间数据同步 41

2.7小结 42

第3章 使用Ember.js路由器融合应用结构 43

3.1 Ember.js实战博客介绍 44

3.2服务器端模型-视图-控制器模式的困境 46

3.2.1 Ember MVC模式 47

3.2.2将各层组合起来 48

3.3 Ember路由器:Ember.js的状态图 49

3.4 Ember.js实战博客第一部分:博客索引页 52

3.4.1创建博客路由器 52

3.4.2添加视图和模板 55

3.4.3显示博客文章列表 56

3.5 Ember.js实战博客第二部分:添加博客文章路由 59

3.6依赖注入与Ember容器 65

3.6.1使用needs属性连接控制器 65

3.6.2通过Ember容器连接对象 66

3.7小结 68

第4章 通过Handlebars.js自动更新模板 69

4.1模板是什么 69

4.1.1简单表达式 70

4.1.2块表达式 71

4.2内置块表达式 73

4.2.1 if及if-else块表达式 73

4.2.2{{unless}}块表达式 74

4.2.3{{with}}块表达式 74

4.2.4 Handlbars.js的注释 75

4.3结合使用Handlebars.js与Ember.js 75

4.3.1在index.html中定义模板 76

4.3.2直接在Ember.TEMPLATES散列中定义模板 77

4.3.3创建Handlebars.js模板支持的Ember.js视图 77

4.4 Ember.js提供的Handlebars.js表达式 78

4.4.1{{view}}表达式 79

4.4.2{{bind-attr}}表达式 80

4.4.3{{action}}表达式 81

4.4.4{{outlet}}表达式 83

4.4.5{{unbound}}表达式 84

4.4.6{{partial}}表达式 84

4.4.7{{link-to}}表达式 85

4.4.8{{render}}表达式 85

4.4.9{{control}}表达式 86

4.4.10{{input}}和{{textarea}}表达式 87

4.4.11{{yield}}表达式 88

4.5创建自己的表达式 88

4.6小结 89

第二部分 创建雄心勃勃的真实Web应用 92

第5章 获取数据:使用Ember Data与服务器端交互 92

5.1将Ember Data用作应用缓存 93

5.1.1定义Ember Data模型 93

5.1.2标识映射的Ember Data 94

5.1.3模型对象间的关联 96

5.1.4模型状态和事件 97

5.1.5与后台通信 99

5.2初尝Ember Data 100

5.2.1从模型中获取数据 101

5.2.2在模型中指定关联关系 101

5.3 Ember Data模型的关联 103

5.3.1了解Ember Data模型的关联关系 103

5.3.2 Ember Data端数据加载 106

5.4自定义适配器和序列化器 108

5.4.1编写自定义适配器,但保留默认的序列化器 109

5.4.2编写自定义适配器和序列化器代码 111

5.4.3自定义URL 113

5.5小结 113

第6章 绕过Ember Data与服务器端交互 115

6.1 Ember Fest介绍 115

6.1.1了解应用程序的路由器 117

6.1.2使用model()钩子函数获取数据 117

6.1.3实现标识映射 118

6.2获取数据 119

6.2.1通过find()函数返回指定演讲数据 120

6.2.2通过findAll()函数获取所有演讲数据 121

6.2.3实现Emberfest.Talk模型类 121

6.3数据持久化 124

6.3.1通过createRecord()函数提交新的演讲 124

6.3.2通过updateRecord()函数修改演讲数据 127

6.3.3通过delete()函数删除演讲数据 130

6.4小结 131

第7章 编写自定义组件 133

7.1关于Ember自定义组件 134

7.2实现可选列表 134

7.2.1定义selectable-list组件 137

7.2.2 selectable-list-item组件 138

7.2.3 delete-modal组件 140

7.2.4通过已完成的三个组件删除具体项 141

7.3实现树形菜单 144

7.3.1树形菜单的数据模型 144

7.3.2定义tree-menu组件 145

7.3.3定义tree-menu-item和tree-menu-node组件 145

7.3.4单选功能支持 147

7.4小结 150

第8章 测试Ember.js应用程序 152

8.1使用QUnit和PhantonmJS进行单元测试 153

8.1.1 QUnit介绍 154

8.1.2使用PhantomJS在命令行执行测试 156

8.1.3集成QUnit和PhantomJS 157

8.2使用QUnit编写简单的Ember.js单元测试 160

8.3集成测试 164

8.3.1 Sinon介绍 165

8.3.2添加新告警信息的集成测试 166

8.4通过Ember.Instrumentation进行性能测试 168

8.5小结 169

第三部分 高级Ember.js主题 172

第9章 使用Mozilla Persona进行认证 172

9.1集成第三方认证系统 173

9.1.1首次登录及注册 173

9.1.2通过第三方认证提供者登录Montric 177

9.2通过HTTP cookie登录用户 180

9.3小结 183

第10章 Ember.js运行循环——Backburner.js 185

10.1什么是运行循环 185

10.1.1 Ember js TodoMVC应用程序介绍 186

10.1.2解释Ember.js运行循环 187

10.2在运行循环框架下执行代码 191

10.2.1在当前运行循环中执行代码 191

10.2.2在下一个运行循环中执行代码 192

10.2.3在后续运行循环中执行代码 193

10.2.4在指定队列执行代码 194

10.2.5通过运行循环执行重复任务 196

10.3小结 197

第11章 打包与部署 198

11.1理解JavaScript应用程序打包和装配 198

11.1.1选择目录结构 199

11.1.2组织自己编写的源代码 200

11.1.3组织非JavaScript资源 202

11.1.4 Ember.js应用程序装配过程 203

11.2使用构建工具Grunt.js 204

11.2.1为Montric应用程序引导Grunt.js构建系统 205

11.2.2连接JavaScript代码 206

11.2.3抽取插件配置代码到单独文件 208

11.2.4 Lint常见错误 209

11.2.5预编译Handlebars模板 211

11.2.6压缩源文件 214

11.2.7 Grunt.js的优缺点 217

11.3小结 218