2017-03-05 4 views
0

私は「ランディングページ」を作成しており、ページがロードされたときに実行される必要があるページロジック(主にアニメーションとインタラクション)スクリプトがあります。テンプレートの `didInsertElement`に相当するフックはどこですか?

hbsのテンプレートの中にscriptというタグを直接書き込もうとしましたが、ブロッコリーは構文の問題に文句を言います。

私はコンポーネント内にdidInsertElementフックについて考えましたが、テンプレートのフックはありません。

既存の部品をコンポーネントに変換せずに、テンプレートのJavaScriptコードをどこに置くことができますか?

答えて

0

Ember 2.xでは、唯一の回避策はコンポーネントです。

の構文を確認してください。前に試してみましたので、動作します。

私の知る限り、didInsertElementに似た経路内の同等のフックがあることは知らない。

また、テンプレート内でpartialヘルパーを試して、別のテンプレートの中にスクリプトを置いてより明確にすることもできます。あなたはでの部分についての詳細を読むことができます

{{foo}} 
{{partial "nav"}} 

http://emberjs.com/api/classes/Ember.Templates.helpers.html#method_partial

同様の質問はここにお願いしてきました

https://discuss.emberjs.com/t/ember-2-0-2-10-trigger-script-after-ready/8948/2

との提案があります代わりにコンポーネントを使用します。

+1

ビューに 'didInsertElement'がありましたが、それらがうまく行っていないため、コンポーネントを使用する必要があります。しかし、私は '部分的に'を勧めます。そして、 '

関連する問題