加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – Angular UI Bootstrap模式:[$inject:unpr]未知的

发布时间:2020-12-17 08:10:41 所属栏目:安全 来源:网络整理
导读:这有点奇怪。当我在线搜索这个问题时,我看到很多页面的Google结果和SO解决方案,但没有一个似乎不起作用! 简而言之,我试图实现AngularUI Bootstrap Modal。我不断收到以下错误: Error: [$injector:unpr] Unknown provider: $uibModalInstanceProvider -
这有点奇怪。当我在线搜索这个问题时,我看到很多页面的Google结果和SO解决方案,但没有一个似乎不起作用!

简而言之,我试图实现AngularUI Bootstrap Modal。我不断收到以下错误:

Error: [$injector:unpr] Unknown provider: $uibModalInstanceProvider <- $uibModalInstance <- addEntryCtrl

这是我的HTML:

<nav class="navbar navbar-default">
  <div class="container">
    <span class="nav-col" ng-controller="navCtrl" style="text-align:right">
      <a class="btn pill" ng-click="open()" aria-hidden="true">Add New</a>
    </span>
  </div>
</nav>

这是我的控制器:

var app = angular.module('nav',['ui.bootstrap']);

app.controller('navCtrl',['$scope','$uibModal',function($scope,$uibModal) {
  $scope.open = function() {
    var uibModalInstance = $uibModal.open({
      animation: true,templateUrl: 'addEntry/addEntry.html',controller: 'addEntryCtrl',});
  };
}]);

最后,这是我的模式代码:

var app = angular.module('addEntry',['firebase','ui.bootstrap']);

app.controller('addEntryCtrl','$firebaSEObject','$state','$uibModalInstance',$firebaSEObject,$state,$uibModalInstance) {
  $scope.cancel = function() {
    $uibModalInstance.dismiss('cancel');
  };

  $uibModalInstance.close();
}]);

我试过的解决方案

>更新Angular Bootstrap(版本:0.14.3)和Angular(v1.4.8)
>将uibmodalInstance更改为modalInstance
>将$ uibModalInstance更改为modalInstance
把我的addEntryCtrl放在我的ModalInstance里面

有什么想法吗?这已经把我推开了近2天了。

*编辑*

我应该注意两件事情:

1)当我从addEntry中删除$ uibModalInstance作为依赖关系时,我的HTML表单提交按钮工作正常,表单看起来完美。即使重定向发生正确(提交时)。问题依然存在:模态仍然保留在屏幕上,抛出$ uibModalInstance未定义的错误。这是有道理的,因为我删除它作为依赖,但我显然仍然需要模态是接近提交。

2)另外,我的应用程序的另一部分几乎有相同的代码。唯一的区别是它通过工厂工作。否则,代码是相同的。因此,我相信我的依赖是所有的,版本是正确的。所以。吓坏。奇怪。

谢谢!

答案找到了!与我的朋友一起走了,我们发现了答案。我想把它发贴在这里,以防别人读这个。

事实证明,我们在我们的模态窗口中有一个ng控制器,它是一个div标签,包裹在模态中的整个html格式。以前,当我们的表单不是模态的(它有一个单独的URL),但是由于某种原因,当它在一个模态中时,它会中断,这一点很好。 ng控制器引用了addEntryCtrl。删除它后立即工作!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读