AngularModalService:将数据传递给控制器
没有太多的w /搜索。我在这里发现了一个类似的线程,但它对我来说并不适合。AngularModalService:将数据传递给控制器
这些例子表明Modal将得到一个单独的控制器。看起来像这样。
var app = angular.module('myApp', ['ngSanitize','angularModalService']);
app.controller('SampleController', ['$scope', function($scope) {
$scope.showAlert = function() {
ModalService.showModal({
templateUrl: "alertWindow.html",
controller: "AlertController",
inputs: {
title: "Add New Alert",
}
}).then(function(modal) {
modal.element.modal();
modal.close.then(function(result) {
$scope.result = "blah";
});
});
});
}]);
app.controller('AlertController', ['$scope', function($scope) {
$scope.close = function(result) {
close(result, 500);
};
}]);
我有的警告是,我希望模态对话框有一些SampleController默认值。我阅读了服务,但我认为这不适用于此。输入:showModal()中的{}看起来很可疑,但我不确定从显示模式窗口的位置获取它的位置。我见过的其他例子只是提供了简单的是/否按钮或文本输入w /空默认值。
根据文档,您将输入注入模态控制器。由于标题是您在上面提到的输入,因此您需要将模态控制器更改为:
app.controller('AlertController', ['$scope', 'title', function($scope, title) {
$scope.title = title;
$scope.close = function(result) {
close(result, 500);
};
}]);
谢谢 - 现在在工作,但我会回家时检查。 – 2014-11-24 15:32:38
这工作。谢谢。对不起,我花了很长时间才回到它。 – 2014-11-29 05:58:56
谢谢它为我工作。把这个标题传回给SampleController怎么样?任何人都可以帮助我。 – 2016-10-21 09:35:28
首先,它看起来像是有语法错误。当你定义你的控制器时,你错过了一个方括号']'。另外,你的$ scope.showAlert不在你的SampleController中。 – 12hys 2014-11-24 01:47:55
你是对的 - 谢谢你的抬头。编辑。然而,那正是我在窗口中编辑它的易读性时,因为控制器中肯定会出现比在这里需要显示更多的信息。所以,我的问题依然存在。现在至少应该更容易阅读代码。 – 2014-11-24 02:13:16
您不在SampleController中包含您的ModalService依赖项。你有没有在任何地方定义ModalService? – 12hys 2014-11-24 02:19:03