javascript - 在 AngularJS/bootstrap 中将对象传递到模式对话框

标签 javascript angularjs twitter-bootstrap angular-ui-bootstrap

我正在尝试使用下面的代码将对象传递到 bootstrap/angularJS 中的模式对话框中。我按照 AngularJS UI Bootstrap modal is unable to perform functions from scope 给出的答案的风格做到了这一点。当模态表单应该通过调用 editGroup() 打开时,我收到以下错误:

Error: [$injector:unpr] Unknown provider: selGroupProvider <- selGroup

var EditGroupModalController = function ($scope, $modalInstance, selGroup) {        
        $scope.user = $sessionStorage.user;
        $scope.selGroup = selGroup;

        $scope.closeModal = function () {
            $modalInstance.close();
        };
    };

    $scope.editGroup = function (selGroup) { // "selGroup" receives the current Group object from $scope.groupList[]
        $modal.open({
            templateUrl: 'app/views/administration/advanced/editgroup.html',
            controller:  ['$scope', '$modalInstance','$modal','$sessionStorage','advancedService','selGroup', EditGroupModalController],
            size: 'lg',
            windowTemplateUrl:'app/views/partials/modaltemplatedraggable.html',
            backdrop:'static',
            resolve: {
                item: function () {
                    return selGroup;
                }
            }
        });
    };

这个错误的官方描述是here ;但是,我不明白为什么会收到此错误。任何对此的帮助将非常感激。

最佳答案

  1. 您的 Controller 的依赖项列表与 Controller 的函数定义不匹配:在 $modal.open 中,您列出了六个依赖项,而在函数中仅存在三个依赖项。
  2. 依赖项是通过 resolve 键注入(inject)的 - 在您的情况下,键是 item

对代码进行必要的更改才能使其正常工作:

替换 (1)

var EditGroupModalController = function ($scope, $modalInstance, selGroup)

var EditGroupModalController = function ($scope, $modalInstance, $modal, $sessionStorage, advancedService, selGroup)

并替换(2)

resolve: {
    item: function () {

resolve: {
    selGroup: function () {

关于javascript - 在 AngularJS/bootstrap 中将对象传递到模式对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30495471/

相关文章:

angularjs 链式淡入/淡出过渡

css - Bootstrap 自定义下载中的颜色?

javascript - JQuery 脚本循环错误

javascript - Bootstrap Popover 内容在隐藏时可点击

javascript - 取消选中大型 (1000) 数据集上的复选框时,Knockout 速度很慢

javascript - 循环遍历对象并显示输入字段

javascript - 在特定点之后忽略用户输入

java - 为什么这个 AngularJS 调用会导致 400 错误请求错误(Spring 后端)

javascript - 更改 bootstrap 3 模态宽度以保持响应能力

html - bootstrap 4 使警报出现在行的顶部