web-dev-qa-db-ja.com

モジュールが利用できない、つづりが間違っている、または読み込みを忘れた(しかし、私はしなかった)

私はangularを初めて使い、JSON APIファイルでそれを使用しています。テストのために、無料のgithub apiを使用しようとしています(関数の名前は、後で使用する別のjson apiの名前です)。関数がconsole.log()で動作しているかどうかを確認したかったのですが、コンソールでこのエラーを受け取りました。

キャッチされないエラー:[$ injector:modulerr]が原因でモジュールMesaViewerのインスタンス化に失敗しました:エラー:[$ injector:nomod]モジュール 'MesaViewer'は使用できません!モジュール名のつづりを間違えたか、ロードするのを忘れました。モジュールを登録する場合は、2番目の引数として依存関係を指定してください。

MesaViewerのスペルは両方ともまったく同じで、2行目に依存関係が見られます!

var app = angular.module("MesaViewer");
var MainController = function($scope, $location, $http, $routeParams) {

私は何を間違えましたか?ここに私のプランクがあります: http://plnkr.co/edit/sZPaFbzbOB6AmVCLL1vq

51
Ian McCleary

そのはず

var app = angular.module("MesaViewer", []);

これはモジュールを定義するために必要な構文であり、依存関係がないことを示すために配列が必要です。

あなたが使用する

angular.module("MesaViewer");

既に定義したモジュールを参照するときの構文。

85
Matt Herbstritt

主任研究員、主任研究員、セグンド・セグンド・デ・マトリズ・デ・ディペンデンシアス・ア・クリア・ウム・モドロ、カソ・コントラーリオ、エ・マ・レフェレンシア・ア・エム・モドゥロの存在

ムダンサ:

var app = angular.module("MesaViewer");

パラ:

var app = angular.module("MesaViewer",[]);

Working Version

13
charlietfl

同じエラーが発生したため、修正しました。それは愚かな理由であることが判明しました。

これが犯人でした:<script src="app.js"/>

修正:<script src="app.js"></script>

スクリプトタグが適切に終了していることを確認してください!

9
Sruthi Poddutur

別の理由で同じエラーを受け取ったときにこの質問を見つけました。

私の問題は、Gulpが新しいモジュールを宣言したという事実に気付かず、Gulpを手動で再実行する必要があったことです。

6
Slicedbread

同じ問題がありますが、angular.min.jsの前にjquery.min.jsを追加することで解決しました。

4
Roberth Godoy

最初にindex.htmlにモジュールとコントローラーを挿入してください。次に、モジュールでこのコードを使用しますvar app = angular.module("MesaViewer", []);

1
sandeep kumar

AngularJS 1.6.9+の使用

もう1つインシデントがあります。モジュール名とは異なる変数名を宣言した場合にも発生します。

var indexPageApp = angular.module('indexApp', []);

このエラーを取り除くには、

エラー:[$ injector:nomod]モジュール 'indexPageApp'は使用できません!モジュール名のつづりを間違えたか、ロードするのを忘れました。モジュールを登録する場合は、2番目の引数として依存関係を指定してください。

var宣言された名前に似たモジュール名を変更する、またはその逆-

var indexPageApp = angular.module('indexPageApp', []);
1
ArifMustafa

私は同じエラーがありましたが、私はそれを解決しました、それはAngularJSプロバイダーの構文エラーでした

1