未知提供商AngularJs在添加“时”;.运行”;
Unknow provider AngularJs when adding in ".run"
我正在启动AngularJS。当我尝试将我的模块"Principal"answers"Authentication"添加到.run()时,我在控制台日志中收到了这条消息。如果我删除"主体"answers"身份验证"。。。我不会犯错。
https://docs.angularjs.org/error/$injector/unp?p0=$scopeProvider%20%3C-%20$scope%20%3C%-%20主体%20%3C-%20授权:unp:未知提供商
var authentication = angular.module('Authentication',[]);
angular.module('simpleApp',['ui.router','ui.bootstrap','Authentication'])
.factory('Principal',['$q','$scope',
function($q,$scope){
}
]).factory('Authorization',['$rootScope','$state','Principal',
function($rootScope, $state, Principal){
}
]).controller('SigninController',['$scope','$state','Principal',
function($scope,$state,Principal){
}
]).controller('HomeController', ['$scope','$state','Principal',
function($scope,$state,Principal){
}
]).config(['$stateProvider','$urlRouterProvider',
function($stateProvider, $urlRouterProvider){
}
]).run(['$rootScope','$state','$stateParams','Principal','Authorization',
function($rootScope,$state,$stateParams,Principal){
}
]);
我的html:
<!DOCTYPE html>
<html ng-app="simpleApp" id="ng-app">
<head>
<link rel="stylesheet" href="/annonce/public/inc/bootstrap/css/bootstrap-theme.css" >
<link rel="stylesheet" href="/annonce/public/inc/bootstrap/css/bootstrap-min.css" >
<link rel="stylesheet" href="/annonce/public/inc/bootstrap/css/bootstrap.css" >
<link rel="stylesheet" href="/annonce/public/inc/bootstrap/css/styles.css" >
<script type="text/javascript" src="/annonce/public/inc/js/jquery-1.11.3.js" ></script>
<script type="text/javascript" src="/annonce/public/inc/bootstrap/js/bootstrap.min.js" ></script>
<script type="text/javascript" src="/annonce/public/app/js/angular.min.js" ></script>
<script type="text/javascript" src="/annonce/public/app/js/angular-route.min.js" ></script>
<script type="text/javascript" src="/annonce/public/app/js/angular-ui-bootstrap.min.js" ></script>
<script type="text/javascript" src="/annonce/public/app/simple/app.js"></script>
<script type="text/javascript" src="/annonce/public/app/modules/authentication/services/AuthenticationService.js" ></script>
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Mik3fly : Admin</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="#">Index</a></li>
<li><a href="#">CGV</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
<nav class="navbar navbar-lower affix" role="navigation">
<div class="container paddingLeftRight0">
<div class="nav sousmenu">
<ul class="nav navbar-nav">
<li><a ui-sref="home">Connexion</a></li>
<li><a ui-sref="signin">Autre</a></li>
</ul>
</div>
</div>
</nav>
<div class="container" style="margin-top:50px;" ui-view="content" >
</div>
</body>
只有实例和常量才能注入到run(...)
块中。查看模块上的AngularJS文档。
配置块-在提供程序注册和配置阶段执行只有提供程序和常量才能注入到配置块中这是为了防止在服务完全配置之前意外实例化服务。
运行块-在创建注入器后执行,用于启动应用程序只有实例和常量才能注入到运行块中。这是为了防止在应用程序运行时进行进一步的系统配置。
尝试将其更改为config
,看看会发生什么。如果这不起作用,您可能需要将$provide
注入config
块,或将$injector$
注入run
块,并使用它们来获取依赖项。
不能将$scope注入Principal工厂。当通过$controller创建控制器时,它通过本地注入。
在您的工厂中删除$scope作为依赖项,或者像在其他工厂中那样使用$rootScope。
相关文章:
- 如果数组仍在执行,async.forEach()将运行我添加到数组中的新元素
- Javascript运行Total保持添加
- 添加行并运行多个mySQL查询
- 如何添加动态Id's并在运行时提取它们
- 无法在运行时将CSS样式添加到元素中
- 运行 AJAX 需要什么 - 将 jQuery 添加到页面处理 AJAX 调用
- 在运行时向 Javascript 对象添加属性
- 如何在C#MVC/Javascript中的运行时添加一个空实体
- 当我尝试添加文本效果时,有东西阻止了JavaScript的运行'手风琴'在html文档中
- 如何确保我的值已添加并存在,然后运行另一个代码jquery
- 回调函数/使用.addClass添加类后运行函数
- 在运行时添加更多的ckeditor
- 在运行时添加js文件时出现语法错误
- 如何在运行时添加的对象上执行Jquery插件
- 为什么我的 init() 函数没有运行?(安装 Firefox 扩展时自动添加工具栏按钮,但仅在首次运行时)
- 如何将自定义脚本添加到运行javascript文件的package.json文件中
- 运行并向nodejs项目添加单元测试
- 如何运行由jquery attr添加到onsubmit属性的函数
- 在运行时将col添加到html表的colgroup中
- 如何使用 innerHTML 运行添加到页面的脚本