angular.js - 正常にロードされた後に、必要な依存関係として angular を遅延実行するにはどうすればよいですか?
大家讲道理
大家讲道理 2017-05-15 16:54:47
0
2
518

まずコードを見てください:

リーリー

requirejs を使用してこのモジュールを呼び出し、angularjs で定義されたモジュールを取得します。angular.module('weather-app',['ngTouch']) のモジュール定義が実行される前に、エラー メッセージ [$injector:modulerr] Failed to instantiate module weather-app due to: が報告されていることがわかります。 .. (ブレークポイントが「use strict」に設定されている場合、すでにエラーが報告されています)。

の場合、エラー メッセージ内の モジュール の名前は、html ファイルの ng-app 属性の値によって変更されることがわかりました。上記のjsモジュールコードは別の値に変更されますが、変更はありません。エラー プロンプトのスタック全体には、weather-app 1 つのリソース ファイルのみが含まれており、その他はブラウザーに付属のプラグインのファイルです。 angular.js

angular.jsはダウンロード直後に実行されたようですが、defineコールバック関数本体のモジュール定義が全く実行されていないため、htmlタグ上のangular命令のチェックを開始し、ng-を初期化しようとしました。アプリで指定した名前が文

で定義されていないことがわかりました。 angular.module('weather-app',['ngTouch']);

これは再確認です: 以前に発生した問題は同じです。

その時点で、angular と他の 2 つのカスタム モジュールがロードされ、合計 3 つの依存関係があり、その後 angular.module 定義が実行されました。
カスタム モジュールが意味のない長い文字列を人工的に挿入した後、angular.module() を定義する前に文字列がロードされるまで待機する必要があるため、angular はその前にロードし、<html> タグで ng を初期化しようとします。エラーが報告されます。

そのため、必要な解決策は、angular.js がロードされた直後に実行するのではなく、angular.module('weather-app',['ngTouch']) コマンドが実行されるまで待ってから続行することです。 -タグのアプリ。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全員に返信(2)
Ty80

ページにng-app="weather-app", 然后再配合使用angular.bootstrapと書かなくても大丈夫です

いいねを押す +0
左手右手慢动作

http://docs.ngnice.com/api/ng/function/angular.bootstrap

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート