Javascript 使用角度引导时$injector错误($modalInstanceProvider<;-$modalInstance)
我一直在玩这个错误,但我似乎不明白。当我将添加到prod服务器的angular bootstrap模型推入时,问题就开始了。最初的错误是:Javascript 使用角度引导时$injector错误($modalInstanceProvider<;-$modalInstance),javascript,angularjs,angular-ui,angular-ui-bootstrap,Javascript,Angularjs,Angular Ui,Angular Ui Bootstrap,我一直在玩这个错误,但我似乎不明白。当我将添加到prod服务器的angular bootstrap模型推入时,问题就开始了。最初的错误是: “AngularJS错误:未知提供程序:提供程序看起来您的FeedService和$modalInstance是混淆的。它们需要处于相同的顺序。首先,您需要按顺序注入所有内容 此外,您应该将$modal注入要在其中创建模态视图的控制器中。并且$modalInstance只能注入用于此$modal窗口的控制器中。在您的情况下,您使用相同的控制器,因此无法注入$
“AngularJS错误:未知提供程序:提供程序看起来您的
FeedService
和$modalInstance
是混淆的。它们需要处于相同的顺序。首先,您需要按顺序注入所有内容
此外,您应该将$modal
注入要在其中创建模态视图的控制器中。并且$modalInstance
只能注入用于此$modal
窗口的控制器中。在您的情况下,您使用相同的控制器,因此无法注入$modalInstance代码>
演示:
此外,在您的情况下(当您仅使用1个控制器时)-您可以作为对象字段传递范围
,该字段将用作模式视图的$scope
的父级。默认情况下,它是$rootScope
,但您可以键入:
$scope.open = function (size) {
var modalInstance = $modal.open({
templateUrl: 'CreateGroupContent.html',
controller: CreateGroupCtrl,
size: size,
scope: $scope
});
现在,函数ok()
和cancel()
将在您的模态视图和模态范围中可用。在粘贴的示例中,当您比较依赖项和构造函数时,“$modalInstance”
会被翻转。这是问题中的一个错误吗?不,我就是这样做的,但我修复了它仍然会给我一个错误。我将它们按正确的顺序放置仍然会给我一个错误。
<button ng-controller="CreateGroupCtrl" ng-click="open()" type="button" id="creategroup" class="btn ns-btn">
<img class="ns-add" src="images/createGroup.png">
<p class="create">Create Group</p>
</button>
<div>
<script type="text/ng-template" id="CreateGroupContent.html">
<div class="modal-header">
<h2 class="modal-title ns-modal-title">Create A Group</h2>
<button class="ns-modal-close" ng-click="cancel()"><img src="images/xCancel.png"></button>
</div>
<div class="modal-body">
<form class="form-signin" role="form">
<input type="text" class="form-control ns-modal-form" placeholder="Teacher" ng-model="create.teacher" required autofocus>
<input type="text" class="form-control ns-modal-form" placeholder="Group Name" ng-model="create.name" required>
</form>
</div>
<div class="modal-footer">
<button class="btn ns-modal-add ns-btn" ng-click="createGroupCall(create.teacher, create.name); ok();" type="submit">Create</button>
</div>
</div>
</script>
</div>
$scope.open = function (size) {
var modalInstance = $modal.open({
templateUrl: 'CreateGroupContent.html',
controller: CreateGroupCtrl,
size: size,
scope: $scope
});