javascript - 收到错误 [$injector :unpr] Unknown provider: $uibModalInstanceProvider

标签 javascript html angularjs angular-ui-bootstrap

我有一个 Controller AddPrice,我使用 $uibModal.open 调用并传入 Controller ,从价格列表屏幕将其作为弹出窗口调用。 addPrice.html 中未定义 Controller

addPrice.html

<div>
  <form>
    <!-- contains UI controls but controller is not mentioned in this page -->
  </form>
</div>

addPriceController.js


(function () {
    'use strict';

    var controllerId = 'addPriceController';

    angular.module('myApp').controller(controllerId, [
      '$scope',
      '$q',
      '$uibModalInstance',
      addPriceController]);

    function addPriceController(
        $scope,
        $q, 
        modalInstance) {

    }
}) ();

上述场景运行良好。

现在我想在不同的 ManagePrice.html 屏幕中重复使用 addPrice.html 作为“页内”编辑而不是弹出窗口。

我在 ManagePrice.html 中添加了以下内容:

<div ng-include src="'addPrice.html'"
     ng-controller="addPriceController">

但我不断收到以下错误:

angular.js:15018 Error: [$injector:unpr] Unknown provider: $uibModalInstanceProvider <- $uibModalInstance <- addPriceController

在这种情况下如何注入(inject) $uibModalInstance?

或者

Angular JS 不允许这样做吗?

最佳答案

$uibModalInstance 对象是由 $uibModal 服务实例化的 Controller 的可注入(inject)对象。它不会注入(inject)到 $compile 服务实例化的 Controller 中。

来自文档:

$uibModal's open function

options parameter

  • controller (Type: function|string|array, Example: MyModalController) - A controller for the modal instance, either a controller name as a string, or an inline controller function, optionally wrapped in array notation for dependency injection. Allows the controller-as syntax. Has a special $uibModalInstance injectable to access the modal instance.

欲了解更多信息,请参阅

关于javascript - 收到错误 [$injector :unpr] Unknown provider: $uibModalInstanceProvider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58588318/

相关文章:

javascript - 我如何在 Firebase 上随机获取相同的数据?

javascript - native react "attempt to set value to an immutable object"

javascript - AngularJS Controller 等待响应(或设置回调)

angularjs - 在 Angular 中使用 cdkDropListData 时出错,无法绑定(bind)到 'cdkDropListData',因为它不是 'div' 的已知属性

javascript - 无法加载/无效声音零长度持续时间报告 chrome、firefox

javascript - boomerang vc导航定时页面加载时间RT插件中timeDone的区别

html - CSS -Menu 作为 <a href> 使用背景而不仅仅是文本

需要 html5 验证 setCustomValidity

javascript - jQuery:<ul> 中的动态插入将无法正常工作

javascript - 注释使 ng-options 起作用,为什么?