Javascript 视图控制器需要:属性不工作

Javascript 视图控制器需要:属性不工作,javascript,ember.js,Javascript,Ember.js,我有一个视图,我在创建时通过controller:将一个控制器连接到该视图,并且我希望需要另一个控制器,我通常会使用needs:。当我加上我得到一个错误“UncaughtTypeError:Cannotcallmethod'has'of null” 模板: <script type="text/x-handlebars" charset="utf-8"> <div id="viewport"> {{view App.playerView}}

我有一个视图,我在创建时通过controller:将一个控制器连接到该视图,并且我希望需要另一个控制器,我通常会使用needs:。当我加上我得到一个错误“UncaughtTypeError:Cannotcallmethod'has'of null”

模板:

<script type="text/x-handlebars" charset="utf-8">
    <div id="viewport">
        {{view App.playerView}}
        {{controllers.currentUser.content.name}}
    </div>
</script>

<script type="text/x-handlebars" data-template-name="player" charset="utf-8">
    <button {{action play on="click"}}>Play</button>
</script>
我在这里设置了一把小提琴:(只需在PlayerController中取消对该行的注释)

可以使用渲染视图/控制器

从文档中:

{{render}
执行以下几项操作:

  • 获取相应控制器呈现的单例实例
  • 使用此控制器的命名模板将设置
  • 相应控制器
对于您的示例,将
{{view…}}
帮助程序改为使用
{{{render}}

{{render "player"}}

这将找到
PlayerView
PlayerController
并使用它们,类似于路线,没有实际的路线部分。

太好了,似乎正是我需要的!我用最终代码更新了fiddle,很抱歉我忘了保存完整的原始代码:X
{{render "player"}}