我正在尝试从this site
实施$ uibModal但是只要我将$ uibModal服务添加到我的控制器,我就会收到错误:[$ injector:unpr] http://errors.angularjs.org/1.4.8/ $ injector / unpr?p0 =%24uibModalProvider%20%3C-%20%24uibModal%20 3C-%%20dailymenuController 我的角度代码如下:
var app = angular.module('App', ['djangular-confirm','djangular-alert','ui.bootstrap']).config(function($httpProvider,$interpolateProvider) {
$httpProvider.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
$httpProvider.defaults.headers.common['X-CSRFToken'] = '{$ csrf_value $}';
$interpolateProvider.startSymbol('{$');
$interpolateProvider.endSymbol('$}');
});
app.controller('dailymenuController', function($scope, $http, $location, $djconfirm, $djalert, $uibModal ) {
var modalInstance = $uibModal.open({
});
});
我添加了这两个文件: '用户界面,引导定制-1.3.3.js' '自举-定制TPLS-1.3.3.js'
我是棱角分明的新手,到目前为止使用角度进行了很少的开发。我在google和SO上搜索过,然后才知道" ui.bootstrap"在创建模块时。但即使这样也没有解决问题。任何帮助都会很棒。
答案 0 :(得分:1)
此类错误[$injector:unpr]
表明Angular无法resolve provider for the item您正在使用 - 在您的情况下需要将$uibModal
注入您的控制器
app.controller('dailymenuController', ['$scope', '$uibModal', function($scope, $uibModal ) {
var modalInstance = $uibModal.open({
//...
});
}]);
答案 1 :(得分:0)
您必须同时包含:
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.0/ui-bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/2.5.0/ui-bootstrap-tpls.min.js"></script>
包括Angular。