Emberjs 1.0命名模板:无法调用未定义的方法'connectOutlet'

时间:2013-09-10 06:07:56

标签: ember.js handlebars.js

命名模板在纸上看起来很简单,但对于我的生活,我无法使用emberjs 1.0,即使有一个修剪过的例子(参见jsbin here http://jsbin.com/uNUQUhi/1/)。

车把模板:

  <script type='text/x-handlebars' id='index'>
    <div>{{outlet test}}</div>
  </script> 

  <script type='text/x-handlebars' data-template-name='test'>
    <h1>A test</h1>
  </script>

...和javascript:

App = Ember.Application.create() ;

App.IndexRoute = Ember.Route.extend({
  renderTemplate: function(controller, model) {
    this.render('test', {
      outlet:'test',
      into: 'index'
    });
  }
});

我一定错过了什么?但是什么?我找不到一个命名出口的工作示例(至少没有一个与v.1.0一起工作)

1 个答案:

答案 0 :(得分:4)

index”模板将是IndexRoute呈现的“普通”模板。由于您要告诉它呈现'test',因此永远不会呈现'index'模板,因此Ember无法找到您的指定插座。如果您将'index'模板重命名为'application',并且渲染into : 'application'一切正常。

http://jsbin.com/oLULeRo/1/edit