Angular重命名后无法实例化模块

时间:2016-05-13 13:45:35

标签: javascript angularjs module initialization

我有一个名为“sample”的Angular模块,而角度调试控制台要我将其重命名为“appname.sample”,我这样做了,我也更改了模块的调用。 但角度似乎仍在寻找模块样本。我收到了错误:

$ injector:modulerr]由于以下原因无法实例化模块decisionone:错误:[$ injector:nomod]模块不可用!您要么错误拼写了模块名称,要么忘记加载它

我应该在哪里改变它?

以下是代码:

angular.module('appname.sample', ['ngRoute', 'common', 'ngSanitize'])

当我包括它时: angular.module( 'appname.sample')

3 个答案:

答案 0 :(得分:1)

如果您将该模块的配置文件/路由文件放在其他位置。确保您也在更改该模块名称。

例如在ngRoute中,如果单独定义config和rout规范,我还需要使模块名称相同。

angular.module('appname.sample', []);

angular.module('appname.sample').config(['$routeProvider', function($routeProvider) {

        $routeProvider
            .when("/urlPath", {
                controller: 'controllerName',
                templateUrl: 'modules/pathToViewPage/view.html',
            });
    }
]);

答案 1 :(得分:1)

在index.html文件页面中,你应该有ng-app ="你的模块名称"在某个地方的标签上,可能是身体标签。更改此项以匹配您的新模块名称。

答案 2 :(得分:0)

可能是因为你已经根据你的sample模块创建了一个不同的模块:

angular.module('someDifferentModule', ['sample'])

如果是这样,你也必须在这里重命名:

angular.module('someDifferentModule', ['appname.sample'])

此外,基于Angular错误,似乎问题不在于您的app.sample,而在于使用名为decisionone的模块

  

$ injector:modulerr]无法实例化模块 decisionone ,原因如下:   错误:[$ injector:nomod]模块不可用!你要么   拼写错误的模块名称或忘记加载它

你是否正在注射这样的地方:

angular.module('someModule', ['decisionone'])

并且desicionone从未实例化为模块?