angularjs – 发送变量到控制器(‘resolve’)在ngDialog
发布时间:2020-12-17 09:56:40 所属栏目:安全 来源:网络整理
导读:这是使用ngDialog打开模态的简单方法: ngDialog.open({ template: 'template.html',controller: 'someCtrl'}) 如何将变量发送到“someCtrl”? 在ngDialog中有“解决”这样的东西吗? 角度引导模式的例子: $modal.open({ template: "pThis is template/p",
这是使用ngDialog打开模态的简单方法:
ngDialog.open({ template: 'template.html',controller: 'someCtrl' }) 如何将变量发送到“someCtrl”? 在ngDialog中有“解决”这样的东西吗? 角度引导模式的例子: $modal.open({ template: "<p>This is template</p>",controller: "someCtrl",resolve: { someVar: function(){ return "Value of someVar" } } }) 这将打开模态将’someVar’发送到负责的控制器. 更新: 看起来新版本的ngDialog添加了这个功能: ngDialog.open({ controller: function Ctrl(dep) {/*...*/},resolve: { dep: function depFactory() { return 'dep value'; } } });
看起来像ngDialog不支持在控制器中进行解析和自定义注入.但是,您可以通过自己创建控制器实例来手动执行此操作:
ngDialog.open({ scope: $scope,template: 'template.html',controller: $controller('someCtrl',{ $scope: $scope,name: 'Thomas' }) }); 那么在控制器中你将可以访问注入的服务/变量: app.controller('someCtrl',function($scope,name) { console.log(name); // Thomas }); 然而,这种方法有一个警告,因为当由ngDialog本身实例化的控制器也会在其中注入 演示:http://plnkr.co/edit/3YpQ2bemk8fntKAPWY9i?p=preview (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |