繁体   English   中英

错误(模块“应用”不可用!)

[英]Errors (Module 'app' is not available!)

我是AngularJS的新手,试图熟悉该框架。

我收到两个错误(可能是模块未加载的结果):

  • 无法实例化模块应用
  • 模块“ app”不可用!

我看过了,我没有拼错任何东西。 我不知道为什么我不工作。 经过几个小时,这可能是一个简单的问题。

 // guessingGameController.js var app = angular.module('app'); function GuessingGameController($scope) { $scope.varifyGuess = function() { $scope.deviation = $scope.deviation - $scope.guess; $scope.numOfGuesses = $scope.numOfGuesses + 1; }; $scope.initializeGame = function() { $scope.guess = null; $scope.randNum = Math.floor((Math.random(1000) + 1)); $scope.deviation = null; $scope.numOfGuesses = null; }; app.controller('GuessingGame', GuessingGameController); } // app.js - create module "app" var app=angular.module('app', []); 
 <!doctype html> <html> <head> <script src="../node_modules/angular/angular.js"></script> <link href="http://netdna.bootstrapcdn.com/bootstrap/ 3.1.1/css/bootstrap.min.css" rel="stylesheet"> <script src="app.js"></script> <script src="js/controllers/guessingGameController.js"></script> </head> <body ng-app="app"> <div class="container" ng-controller="GuessingGame"> <h2>Guess the Number !</h2> <p class="well lead">Guess the computer generated random number between 1 and 1000.</p> <label>Your Guess: </label><input type="number" ng-model="guess" /> <button ng-click="verifyGuess()" class="btn btn-primary btn-sm">Verify</button> <button ng-click="initializeGame()" class="btn btn-warning btn-sm">Restart</button> <p> <p ng-show="deviation<0" class="alert alert-warning">Your guess is higher.</p> <p ng-show="deviation>0" class="alert alert-warning">Your guess is lower.</p> <p ng-show="deviation===0" class="alert alert-success">Yes! That"s it.</p> </p> <p class="text-info">No of guesses : <span class="badge">{{noOfTries}}</span> <p> </div> </body> </html> 

有两种方法可以使用带有1或2个参数的angular.module

这引用了应该存在的名为“ app”的模块, 如果存在,则返回该模块:

var app = angular.module('app');

这将创建一个名为“ app”的模块,并在成功时返回它:

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

第二个参数(数组)可以包含新模块依赖的其他模块的列表。

在您的代码中,第一行尝试访问一个尚不存在的模块,并且您得到一个错误。

 var app = angular.module('app', []); function GuessingGameController($scope) { $scope.numOfGuesses = 0; $scope.verifyGuess = function() { console.log($scope.deviation, $scope.guess) $scope.deviation = $scope.deviation - $scope.guess; $scope.numOfGuesses = $scope.numOfGuesses + 1; }; $scope.initializeGame = function() { $scope.guess = null; $scope.randNum = Math.floor((Math.random(1000) + 1)); console.log($scope.randNum); $scope.deviation = null; $scope.numOfGuesses = null; }; } app.controller('GuessingGame', GuessingGameController); 
 <head> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.7/angular.min.js"></script> <body ng-app="app"> <div class="container" ng-controller="GuessingGame"> <h2>Guess the Number !</h2> <p class="well lead">Guess the computer generated random number between 1 and 1000.</p> <label>Your Guess: </label><input type="number" ng-model="guess" /> <button ng-click="verifyGuess()" class="btn btn-primary btn-sm">Verify</button> <button ng-click="initializeGame()" class="btn btn-warning btn-sm">Restart</button> <div> <p ng-show="deviation<0" class="alert alert-warning">Your guess is higher.</p> <p ng-show="deviation>0" class="alert alert-warning">Your guess is lower.</p> <p ng-show="deviation===0" class="alert alert-success">Yes! That"s it.</p> </div> <p class="text-info">No of guesses : <span class="badge">{{numOfGuesses}}</span> </p> </div> </body> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM