2017-02-16 21 views
1

テンプレート(コンポーネントではありません)にボタンがあり、clickイベントを追加する必要があります。正しいイベントはjsファイルですか?テンプレートボタンのクリックイベントを配置する場所

私は、それぞれのコンポーネントのjsアクションにコンポーネントアクションを入れなければならないというemberサイトを検索します。そうでなければ、jsをルーティングするようにバブルします。それぞれのルートjsファイル以外のアクションを追加する場所がないので、テンプレート(コンポーネントではない)アクションを配置する場所を見つけることができませんでした。

テンプレートアクションをそれぞれのルートjsファイルに入れてもよろしいですか?

私は初心者です。英語が苦手な人には申し訳ありません。

答えて

1

はい、ルート内にアクションハンドラを配置できます。

対応するコントローラまたはルータからテンプレートイベントを処理できます。

いずれの場所にもactionsプロパティ内にハンドリング機能を入れるだけです。

アクションのための注文テンプレートの見た目は、コントローラーが最初に、ルーターと上位ルーターがアプリケーションルーターに分割されます。

+0

私は今これを持っています "アサーションに失敗しました: 'toggleButton'という名前のアクションが見つかりませんでした(インストールされたベースディテールコントローラーが生成されました)。 – Prageeth

+0

これは、暗黙的にコントローラを生成してそこにアクションを起こさなかったことを意味します。簡単な修正は 'ember g controller your_controller_name'であり、アクションハンドラをその中に入れます。 –

+1

テンプレート内の 'filter = 'filterByCity'の代わりに' filter =(action 'filterByCity') 'を使用してアクションを定義してみてください。 –

関連する問題