将参数传递到模式对话框

Passing parameters to modal dialog

本文关键字:对话框 模式 参数传递      更新时间:2023-09-26

我正在尝试使用一个简单的模态对话框在Angular应用程序的上下文中编辑列表中的项目。对于模态,我使用UI Bootstrap(AngularUI),我知道Bootstrap 3仍然存在问题,但AFAIK可以用于具有一些简单解决方案的模态(除非构建尚未发布的AngularUI分支)。我在这里创建了一个简单的repo Plunker

http://plnkr.co/edit/MWa3bLMqIkwxmxQ6YDSl

示例代码有两个控制器,一个使用open方法打开模态,另一个使用用于按钮保存和取消的saveclose方法。此外,CSS包含一些解决Bootstrap3中AngularUI问题的方法。将显示模式对话框,但它不会接收到从调用控制器传递的参数要传递这个参数(一个带有id和名称的伪item对象),我在模态打开方法调用中使用resolve选项,如:

resolve: {
  item: function() {
    return angular.copy(item);
  }
}

然而,应该在对话框控制器中解析的item参数似乎是未定义的。我在这里缺少什么?谢谢

您需要在控制器注入中注入项目:

你有这个:

ItemDialogController.$inject = ["$scope", "$modalInstance"];

更改为:

 ItemDialogController.$inject = ["$scope", "$modalInstance", "item"];