EmberJS快速入门(二)
来源:互联网 发布:ios10不安全网络怎么连 编辑:程序博客网 时间:2024/05/17 15:17
英文原版:https://guides.emberjs.com/v2.13.0/getting-started/core-concepts/
核心概念
在开始编写ember代码之前,先对ember的工作机制有一个总体的了解是个不错的事情。
路由和路由处理程序
想像一下我们现在要编写一个发布租赁信息的站点。在那么,我们都应该考虑回答例如这样的问题:租赁信息应该怎么展示??它们可编辑吗?? 通过Ember,这些问题的答案都可以通过URL来解答。URL可以通过如下方法来设置:
- 当用户第一次访问应用的时候。
- 当用户人为的更改URL的时候,例如通过点击浏览器的回退按钮。
- 当用户点击了应用内的超链接。
- 其他一些会引起URL改变的事件。
不论URL怎么被设置,首先会发生的是Ember会将URL映射到对应的路由处理程序去。
路由处理程序会做两件事情:
- 渲染对应的模板
- 读取模型
模板
Ember使用模板来组织应用的HTML元素布局。
Ember中绝大部分的模板看起来都差不多,就像是HTML的片段。例如:
<div>Hi, this is a valid Ember template!</div>
Ember模板使用的是Handlerbars模板语法。任何对于Handlerbars有效的语法对于Ember都有效。
模板同时也可以把在当前上下文环境中提供给它们的属性显示出来,上下文可以是组件或者是路由控制器。例如:
<div>Hi {{name}}, this is a valid Ember template!</div>
这里, {{name}}是由当前上下文提供给模板的属性。
除了属性,”{{ }}” 双层大括号中还可以囊括 助手 和 组件。这个将在后续讨论。
模型
模型–是由各种状态组成的。
举个例子,一个发布有租赁信息的应用它想要保存的是被发布信息的种种细节,所以我们可以定义一个 “租赁”模型,在该模型中提供关于租赁的所有信息。并将它命名为rental。
模型一般由服务器生成,并且能被保存到任何地方,就比如 说 浏览器中的 Local Storage。
组件
模板用来描述用户接口的长相,组件是用来控制用户接口的行为。
组件由两部分组成:
- 一个由Handlebars编写的模板文件。
- 一个定义了组件行为的javascript源文件。
再举例,我们这个发布租赁信息的应用应该有一个叫 all-rentals 的组件用来展示租赁信息。还需要一个用来展示具体某一条租赁信息详情的组件,就叫它 rental-tile吧。我们应该给它定义一个行为,用来让用户隐藏/显示 相关图片。
ok,本节就先到此结束。欲闻后事如何,请听下回分解。
在下一小节,我们将创建此应用来展示如何通过Ember来实现我们想要的功能。
- EmberJS快速入门(二)
- EmberJS快速入门(一)
- Day 19: EmberJS 入门指南
- PSQL快速入门(二)
- eXtremeDB快速入门:二
- Grails 快速入门(二)
- Maven快速入门(二)
- mybatis快速入门(二)
- Flask入门二:快速入门
- Struts快速入门(二)
- Struts快速入门(二)
- Struts快速入门(二)
- Struts快速入门(二)
- Struts快速入门(二)
- NUnit快速入门(二)
- Struts快速入门(二)
- Firebug快速入门(二)
- Delphi快速入门(二)
- Android动画总结
- 使用scrapy爬取拉勾网职位信息
- 在类中使用array_map()简单的递归过滤一些字符
- python学习——IO编程——文件读写
- 为什么要重写hashcode()
- EmberJS快速入门(二)
- Android6.0系统悬浮窗权限的问题解决方法
- qt sqlite数据库操作
- Java equals方法编写规范 —— 牢记这5条军规
- Information:Gradle tasks [:app:clean, :app:generateDebugSources和transformClassesWithJarMergingForDeb
- build cef 3.3029.1619.geeeb5d7
- JSP页面中插入css样式的三种方法
- JavaScript中的递归、PTC、TCO和STC
- STM32F4-Discovery