Ember.js--入门

Ember.js是构建“雄心勃勃”的应用程序的MVC模式javascript框架。它是一个基于模版(handlebars)开发的javascript框架。Ember.js唯一依赖于Jquery,故而开发的时候至少应包含如下js:

<script src="../../../jquery/jquery-1.8.3.min.js"></script>
<script src="../handlebars-1.0.0-rc.3.js"></script>
<script src="../ember-1.0.0-rc.1.js"></script>
<script src="js/app.js"></script>

构建Ember.js应用主要使用它的6个组件:应用程序(Application)、模型(Model)、视图(View)、模板(Template)、路由(Routing)和控制器(Controller)。

Application:一个全局的命名空间对象,其他所有组件都属于应用,创建应用即是创建程序入口。

Model:一个存储持久化数据的对象。一般数据从服务端获取,由应用操作,展示给用户。

View:负责将原生事件转换为应用中的语义事件,并将时间发送到控制器。视图必须包含一个模版。

Tempalte用来描述你的应用的用户界面的,它是用Handlebars 模版语言来写的。

  除了普通的HTML,模版还包含以下内容:

    1.表达式,从控制器和模型中获取数据,并将数据替换成html内容。当数据改变时,会自动更新html内容。例如:{{firstName}}。

    2.插座(Outlet),模版的占位符。当用户访问你的应用的时候,路由器会根据url将不同的模版插入到插座(outlet)中展示出来。在模版中使用{{outlet}}标签来添加一个插座(outlet)。

    3.视图(View),负责处理用户事件。在模版中使用{{view}}标签来添加一个视图。

Routing负责将URL与模版、模型、控制器关联起来,是一个管理应用状态的对象。

Controller:一个存储应用临时数据的对象,模版会连接控制器将当前存储的数据转换为HTML。


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ember Demo</title>
<script src="../../jquery/jquery-1.8.3.min.js"></script>
<script src="../handlebars-1.0.0-rc.3.js"></script>
<script src="../ember-1.0.0-rc.1.js"></script>
<script type="text/javascript">
	//创建应用,Ember中变量命名应首字母大写
	App = Ember.Application.create();
	//创建路由
	App.Router.map(function() {
		//resoure是一个路由组,path表示路由路径,注意路由名必须与模版名对应
		//访问时,在当前路径后添加#路由路径即可
		this.resource('main', { path: '/' }, function() {
			//定义一个子路由,main.child对应模版名main/child
			this.route('child');
		});
	});
</script>
</head>
<body>
<!-- 定义一个应用模版,应用可以省略模版名,默认为:application -->
<script type="text/x-handlebars">
	<h2>This is my first demo</h2>
	{{outlet}}
</script>
<!-- 定义一个父模版 -->
<script type="text/x-handlebars" data-template-name="main">
	<h3>这是一个主模版</h3>
	{{outlet}}
</script>
<!-- 定义一个自模版 -->
<script type="text/x-handlebars" data-template-name="main/child">
	<h3>这是一个子模版</h3>
</script>
</body>
</html>

页面效果:


访问子路由:




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值