在EmberJS中嵌套资源

时间:2013-10-12 13:20:33

标签: javascript ember.js handlebars.js

我对EmberJS框架很陌生,我想知道我怎样才能做出像这样的工作:

    索引页面上的
  • 是大学列表,
  • 点击特定大学后,该大学的专业列表显示,
  • 点击特定专业后的主题列表。

我在JavaScript中做的是这样的:

App.Router.map(function() {
  this.resource('index', { path: '/' }, function(){
    this.resource('universities', { path: 'univs'}, function(){
      this.resource('university', { path: '/:universities_id'}, function(){
        this.resource('majors', { path: 'majors'}, function(){
          this.resource('major', { path: '/:majors_id'}, function(){
            this.resource('subjects', { path: 'subjects'}, function(){
            });//subjects
          });//major
        });//majors
      });//university
    });//universities       
  });//index
  this.resource('about');
  this.resource('contact');
});

你能否告诉我这是否是一种正确的方法,如果是这样的话,你能否告诉我如何编写完成它所需的模板?

1 个答案:

答案 0 :(得分:2)

是的,这是正确的方法。但你不需要资源'索引'。

您可以将模板放在html页面中并在路由器中渲染它们(使用renderTemplate)。

http://jsbin.com/abiLaPi/1 - 简化版。

http://jsbin.com/abiLaPi/1/edit - 源代码。