0

试图转移到 Ember 1.0.0-rc2,这个我还没有解决(下面的语法是 CoffeeScript):

App.Router.map(() ->
  @route('EditPrices', path: '/redigera')
)

我将如何指定此路由应使用 App.Views.EditPrices.EditPricesView,而不仅仅是 App.EditPricesView?我尝试将“Views.EditPrices.EditPrices”指定为 this.route() 方法的第一个参数,但这绝对没有给我任何信息 - 没有错误消息,没有警告,但它不会呈现任何内容......

我想出的一个非常丑陋的解决方法是:

App.EditPricesView = App.Views.EditPrices.EditPricesView

...但显然,必须有更好的方法?并且请不要告诉我将所有视图都放在根(App)对象中;这根本不是一个选择......

提前致谢。

4

1 回答 1

2

是的,Ember 希望将视图放置在 App 根目录中。你的解决方法是最好的,我能想到的。唯一的其他选择是在路由的 renderTemplate 挂钩中使用渲染,但这需要更多代码:

App.PostRoute = App.Route.extend({
  renderTemplate: function() {
    this.render('myPost', {   // the view to render
      into: 'index',          // the template to render into
      outlet: 'detail',       // the name of the outlet in that template
      controller: 'blogPost'  // the controller to use for the template
    });
  }
});
于 2013-04-02T21:07:53.490 回答