gpt4 book ai didi

javascript - 错误 : [$injector:modulerr]

转载 作者:数据小太阳 更新时间:2023-10-29 05:26:21 27 4
gpt4 key购买 nike

我是新手。刚刚学习/尝试将 Angular 与我的网络应用程序(Java + jQuery + requireJS)集成。我没有使用任何路由器,下面是我的脚本。来自其他stackoverflow我了解到此错误是由于缺少包含 ngRoute 模块造成的。从 1.1.6 版本开始,它是一个单独的部分。但是在我下面的代码中,我根本没有使用任何 ngRouter。当我没有引用它时,为什么会出现此错误?

错误:[$injector:modulerr] 由于以下原因无法实例化模块计数器:[$injector:nomod] 模块“计数器”不可用!您要么拼错了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。 http://errors.angularjs.org/1.2.11/ $injector/nomod?p0=计数器

模板:

<ul ng-app="counter" ng-controller="counterController">
<li>
<span class="ui-button-text" ng-bind="critical"></span>
</li>
<li>
<span class="ui-button-text" ng-bind="error"></span>
</li>
<li>
<span class="ui-button-text" ng-bind="warn"></span>
</li>
<li>
<span class="ui-button-text" ng-bind="note"></span>
</li>
</ul>

JS

requirejs.config({
paths : { angular: "/js/lib/angular/angular.min" },
shim : { "angular": { deps: [ "jquery"], exports: "angular" } }
});

require(["angular", "jquery"],function() {

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

module.controller('CounterController', function ($scope, $http, $timeout) {
$scope.critical = 0;
$scope.error = 0;
$scope.warn = 0;
$scope.note = 0;

function setData(d){
$scope.critical = d.critical;
$scope.error = d.error;
$scope.warn = d.warn;
$scope.note = d.note;
}

var getCounters = function() {
var config = {headers: {
'X-MY-Request': (new Date()).getMilliseconds()
}
};

$http.get('xxxxxxx', config)
.success(function(data, status, headers, config) {
setData(data);
$timeout(getCounters, 60000);
}).error(function(data, status, headers, config) {
// Handle the error
});

}


$timeout(getCounters, 500);
});

最佳答案

在您的模板中,您的 Controller 名称以小写字母开头 counterController。你的 js 有一个大写的 CounterController。这可能是问题所在吗?

任何未找到的注入(inject)模块都会抛出错误。不仅仅是 ngRoute。

编辑:

我只是把一个快速的 plunker 放在一起,没有“要求”的东西,你的所有代码都是正确的。所以不,你不会在你的 Angular 代码中遗漏任何东西。所有模块都在工作。

所以问题一定出在您的“要求”设置上。我实际上从未使用过它,所以无法真正帮助您。在这里寻找更多Angular + Requirejs - Loading in the wrong order .

现在,如果我是你,我会一次学习一种技术。只需加载您的 angular 和 jquery 资源,然后学习如何使用它们。然后,当您感觉舒服一点时,添加“要求”。

关于javascript - 错误 : [$injector:modulerr],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21539043/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com