4

js コードを含む多くのテンプレート html ページがあります。RouteProvider がこのテンプレートの 1 つをロードすると、JS が実行されません。私は評価を使いたくありません。外側の .js ファイルにコードを書き、requireJS を使用することはできますが、requireJS を使用して「未使用」の js ファイルを非アクティブ化する方法がわかりません。読み込まれたテンプレート ページで JS コードを実行する方法を教えてください。

4

1 に答える 1

2

現在のバージョン(1.0.4および1.1.2)では、AngularJSは(または)を介して指定された部分に含まれるJavaScriptコードを実行しませtemplateUrltemplate

現時点での最善の選択肢は、ほとんどのコードを事前にロードすることです。人々はrequireJSを試していましたが、SOやメーリングリストには多くの質問があります。しかし、真実は、コントローラーとパーシャルに対してオンデマンドのロードを実行できる一方で、一般にオンデマンドのロードは十分にサポートされていないということです(これについて詳しくは、AngularJSでモジュール性をどのように軽減するかを参照してください)。実際には、AngularJSで記述されたコードは非常に簡潔である傾向があるため、問題にはならない可能性があります。そのため、事前にロードすることでパフォーマンスに悪影響が及ぶことはありません(逆に、すべてのコードがブラウザーにあるため、オンデマンドロードに関連する遅延はありません)。

ロードオンデマンドは、AngularJS2.0の一部として取り組んでいる機能です。

于 2013-02-03T20:15:06.677 に答える