我查看了您的 plunker 代码,将 AddControllerGroup 组合成 AddController 非常容易。唯一阻止它的是您在两个控制器中都调用了您的方法open。
更新后的AddController 如下所示:
sitesApp.controller('AddController', function ($scope, $modal) {
$scope.openAddSite = function () {
var modalInstance = $modal.open({
templateUrl: 'addSites.html',
controller: 'ModalInstanceCtrl'
});
};
$scope.sites = [
{
url:'',
color:'',
groups: []
},
{
url:'',
color:'',
groups: []
},
{
url:'',
color:'',
groups: []
}
];
$scope.openAddGroup = function () {
var modalInstance = $modal.open({
templateUrl: 'addGroups.html',
controller: 'ModalInstanceCtrl'
});
};
$scope.groups = [
{
name:'',
color:'',
sites: []
},
{
name:'',
color:'',
sites: []
},
{
name:'',
color:'',
sites: []
}
];
});
然后我只是将您的两个按钮更改为调用openAddSite() 和openAddGroup() 并且一切正常。
您仍然需要连接一些代码来处理来自模式的结果,但这应该可以帮助您入门。