Jas*_*nce 1 javascript dependency-injection asp.net-mvc-4 angularjs
我是Angular和依赖注入的新手.我在页面加载时收到以下错误.我正在尝试在.Net/MVC4中创建类似此示例的表单向导.任何帮助是极大的赞赏.
未捕获错误:[$ injector:unpr]未知提供者:$$ qProvider < - $$ q < - $ animate < - $ compile
在视图头中加载的脚本:
<script src="@Url.Content("/Scripts/bower_components/angular/angular.js")"></script>
<script src="@Url.Content("/Scripts/bower_components/angular-ui-router/release/angular-ui-router.js")"></script>
<script src="@Url.Content("/Scripts/bower_components/angular-animate/angular-animate.js")"></script>
<script src="@Url.Content("/Scripts/modules/long-form-app-module/LongFormApp.js")"></script>
<script src="@Url.Content("/Scripts/modules/long-form-app-module/LongFormController.js")"></script>
Run Code Online (Sandbox Code Playgroud)
HTML标记
<div class="application">
<!-- Inject partial view from router -->
<section ui-view></section>
</div>
Run Code Online (Sandbox Code Playgroud)
LongFormApp.js脚本
(function () {
'use strict';
// Create our app and inject ngAnimate and ui-router
angular.module('GllApp', ['longFormController'])
.config(function ($stateProvider, $urlRouterProvider) {
// Catch all route
// By default send user to question one
$urlRouterProvider.otherwise('/home');
$stateProvider
// Route to show start of form
.state('home', {
url: '/home',
templateUrl: 'LongForm.html',
controller: 'LongFormController'
})
// Route to show start of form
.state('home.q01', {
url: '/home/q01',
templateUrl: 'LongFormQuestion01.html'
});
});
})();
Run Code Online (Sandbox Code Playgroud)
LongFormController.js脚本
(function () {
'use strict';
angular.module('longFormController', ['ngAnimate', 'ui.router'])
.controller('LongFormController', ['$scope', function ($scope) {
// do stuff
}]);
})();
Run Code Online (Sandbox Code Playgroud)
小智 7
我刚刚用我的项目解决了这个问题.根本原因是我依赖于"角度 - 动画":"~1.3.0",所以凉亭使用Angular v1.3,即使项目的其余部分依赖于Angular 1.2.
只是用
"angular-animate": "~1.2.0"
Run Code Online (Sandbox Code Playgroud)
代替
"angular-animate": "~1.3.0"
Run Code Online (Sandbox Code Playgroud)
在你的bower.json文件中.之后bower install就可以工作了!