一个最常见的用户界面任务是显示一个列表的东西。本课程的例子是要在页面上显示的用户列表,用到的知识主要就是
handlebars.js
模版表达式。
显示一个数据列表和模板
json(
我们要显示要显示的数据如下:var users = [ { id: 1, first: 'Ryan', last: 'Florence', avatar: 'https://si0.twimg.com/profile_images/3123276865/5c069e64eb7f8e971d36a4540ed7cab2.jpeg' }, { id: 2, first: 'Tom', last: 'Dale', avatar: 'https://si0.twimg.com/profile_images/1317834118/avatar.png' }, { id: 3, first: 'Yehuda', last: 'Katz', avatar: 'https://si0.twimg.com/profile_images/3250074047/46d910af94e25187832cb4a3bc84b2b5.jpeg' }];
核心的语句就是这几句:
我们还是定义一个命名空间和路由,并且定义给该路由提供数据的模型model:
var App = Ember.Application.create();App.ApplicationRoute = Ember.Route.extend({ model: function() { return users; }});
要显示用户列表的代码:
ul class="nav well"> { {#each model}} //{ {each}}块语句遍历模型中的每一个数据;
这个例子很简单,其实使用默认顶级模版Application
就够了,但如果显示的内容很多,都放在顶级模版里可能不是个好的选择,模版里的内容会看起来相当复杂;这里我们不采用顶级模版,另外定义一个新的user
的模版。
你可能已经看出来了,user
模板里定义了显示了客户的头像、姓名的表达式,那顶级模板Application
里的{
完整代码:
JS Bin