EmberJS:contentBinding不起作用

时间:2013-02-16 17:10:54

标签: javascript coffeescript ember.js

这里有什么不对?为什么视图中的contentBinding不起作用?

输出
视图中的内容未定义

router.coffee

App.Router.map ->
  @route "show"
  @route "intro",

intro_controller.coffee

App.IntroController = Ember.ArrayController.extend

  content: []

  createRecords:(files) ->
    @set('content', Ember.A())

    person = Ember.Object.create(username: "hello world")
    @pushObject person
    console.info "content in controller", @get('content')

    @transitionTo 'show'

show_view.coffee

App.ShowView = Ember.View.extend

  contentBinding: 'App.IntroController.content',

  didInsertElement: ->
    console.info "content in view", @get('content')

1 个答案:

答案 0 :(得分:0)

这是因为App.IntroControllerEmber.Object的子类,而不是实例。

您需要App.ShowController来指定需要的内容

App.ShowController = Ember.Controller.extend({
    needs: ['intro']
});

然后在视图中,您将可以访问:controllers.intro.content