0

私は Ember を学ぼうとしており、最近はgithub で談話コード ベースを参照するのに多くの時間を費やしています。とにかく、ビューメソッドに似たものを実装したかったのですmodalが、なぜ機能しないのかわかりませんcurrentViewBinding

以下は、これらのリンクから参照される情報の組み合わせです。

App.HeaderController = Ember.Controller.extend
  templateName: 'application/header'
  needs: ['modal']

  toggleLogin: ->
    console.log "HeaderController.toggleLogin"
    @get('controllers.modal').show(App.LoginView.create())

App.ModalController = Ember.Controller.extend
  show: (view) ->
    @set('currentView', view)

App.ModalView = Ember.ContainerView
  currentViewBinding: 'controller.currentView'

  viewChanged: (->
    console.log "Modal view changed"
  ).observes('controller.currentView')

App.LoginView = Ember.View.extend
  templateName: 'modal/login'

私の見解は基本的に次のようになります。

<!-- application.hbs -->
{{render header}}
{{outlet}}

<!-- header.hbs -->
<button {{action toggleLogin}}>Login</button>
{{render modal}}

<!-- modal/login.hbs -->
<h2>Login Form!!</h2>

アプリが最初に読み込まれると、 「Modal view changed」の2 つのコンソール ログが表示されます。ヘッダー テンプレートのボタンをクリックしても、コンソール メッセージ「HeaderController.toggleLogin」以外は何も起こりません。{{action toggleLogin}}

私は何が間違っているのですか、それともEmber.ContainerViewドキュメントが機能することを意図したものではありませんか?

4

1 に答える 1

0

解決済み

から1.0.0-rc.1に更新1.0.0-rc.2

于 2013-04-05T21:25:52.943 に答える