2016-05-12 4 views
1

私はいくつかの変数に従って子コンポーネントが動的に生成されるシステムを作りました。しかし、すべての可能なコンポーネントはいくつかの方法を共有しています。これはどのように達成できますか?子コンポーネントはEmberJSの親コンポーネントのアクションにどのようにアクセスできますか?

親成分:親ビューで

export default Ember.Component.extend({ 
    actions: { 
    someAction() {} 
    } 
}); 

、成分が{{コンポーネント}}ヘルパーを使用して呼び出され

{{component 'someComponent'}}

子コンポーネント:

export default Ember.Component.extend({}); 

ここでは、子ビューの親コンポーネントのsomeActionにアクセスする必要があります。

例:

<button {{action 'someAction'}}>Click me !!</button> 

私はあなたがダウンしてアクションを与える必要がエンバー1.13.0

答えて

1

を使用しています。その後、

{{component 'someComponent' someAction=(action 'someAction')}} 

そして、あなたの子コンポーネントでそれを呼び出す:

this.attrs['someAction'](); 

これを置くことができます一般的なミックスイン:

actions: { 
    someAction() { 
    this.attrs['someAction'](...arguments); 
    } 
} 
関連する問題