javascript - Angularjs:[$injector:modulerr] 无法实例化模块 ui-router

标签 javascript angularjs dependency-injection module

我是 Angular 的一个相对新手,在学习完教程之后,我现在想自己从头开始构建一些东西。所以我正在尝试设置一个我想在其中使用的基本应用程序the $stateProvider (因为我读到它比 $routeProvider 更好)。所以这是我的html:

<html ng-app="formApp">
<head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.15/angular-ui-router.js"></script>
    <script src="js/controllers.js"></script>
    <script src="js/app.js"></script>
</head>
<body>
<div ng-view></div>
</body>
</html>

和我的app.js看起来像这样:
'use strict';

var formApp = angular.module('formApp', ['ui-router']);

formApp.config(function($stateProvider, $urlRouterProvider){
    $stateProvider
        .state('main', {
            url: '/main',
            templateUrl: 'templates/main.html',
            controller: 'MainCtrl'
        });

    $urlRouterProvider.otherwise('/main')
});

但是我在控制台中遇到了一个巨大的错误,说:
Error: [$injector:modulerr] Failed to instantiate module formApp due to:
[$injector:modulerr] Failed to instantiate module ui-router due to:
[$injector:nomod] Module 'ui-router' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
http://errors.angularjs.org/1.4.3/$injector/nomod?p0=ui-router
minErr/<@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:68:12
etc. etc.

我了解 'ui-router'在我的应用程序声明中显然是错误的,但没有它我会得到下面更大的错误。

知道如何解决这个问题吗?欢迎所有提示!
Error: [$injector:modulerr] Failed to instantiate module formApp due to:
[$injector:unpr] Unknown provider: $stateProvider
http://errors.angularjs.org/1.4.3/$injector/unpr?p0=%24stateProvider
minErr/<@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:68:12
createInjector/providerCache.$injector<@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4262:19
getService@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4409:39
invoke@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4441:1
runInvokeQueue@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4356:11
loadModules/<@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4365:11
forEach@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:336:11
loadModules@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4346:5
createInjector@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:4272:11
bootstrap/doBootstrap@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:1630:20
bootstrap@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:1651:1
angularInit@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:1545:5
@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:28359:5
trigger@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:2996:7
createEventHandler/eventHandler@https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.3/angular.js:3271:9

http://errors.angularjs.org/1.4.3/$injector/modulerr?p0=formApp&p1=%5B%24injector%3Aunpr%5D%20Unknown%20provider%3A%20%24stateProvider%0Ahttp%3A%2F%2Ferrors.angularjs.org%2F1.4.3%2F%24injector%2Funpr%3Fp0%3D%2524stateProvider%0AminErr%2F%3C%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A68%3A12%0AcreateInjector%2FproviderCache.%24injector%3C%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4262%3A19%0AgetService%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4409%3A39%0Ainvoke%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4441%3A1%0ArunInvokeQueue%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4356%3A11%0AloadModules%2F%3C%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4365%3A11%0AforEach%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A336%3A11%0AloadModules%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4346%3A5%0AcreateInjector%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A4272%3A11%0Abootstrap%2FdoBootstrap%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A1630%3A20%0Abootstrap%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A1651%3A1%0AangularInit%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A1545%3A5%0A%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A28359%3A5%0Atrigger%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A2996%3A7%0AcreateEventHandler%2FeventHandler%40https%3A%2F%2Fcdnjs.cloudflare.com%2Fajax%2Flibs%2Fangular.js%2F1.4.3%2Fangular.js%3A3271%3A9%0A

最佳答案

您正在尝试使用来自“ui.router”的 $stateProvider 和 $urlRouterProvider,并且您没有注入(inject)依赖项“ui.router”。
var formApp = angular.module('formApp', ['ui.router']);
那是你得到的错误,请阅读https://docs.angularjs.org/guide/di .

关于javascript - Angularjs:[$injector:modulerr] 无法实例化模块 ui-router,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31693600/

相关文章:

javascript - 解码 Javascript For 循环

angularjs - 指令范围属性根据属性名称中断

android - Hilt : java. lang.ClassNotFoundException: 找不到类 "com.kotlin20test.Hilt_MyApp"

c++ - c++中构建依赖和执行DI

javascript - 根据按钮点击显示隐藏内容

javascript - EmberJS : Action not found in (generated foo. 索引 Controller )

javascript - 使用jQuery测试数组中是否存在具有属性的对象

angularjs - Angular.js 以编程方式将表单字段设置为脏

javascript - ng-show 内容在页面加载期间闪烁,尽管它不是真实的并且 ng-cloak 不适用于 FF

c# - 依赖注入(inject)和其他构造函数参数 - 不好的做法?