如何从模态弹出角度js中获取值

时间:2015-11-04 18:37:46

标签: angularjs modal-dialog

我在模态弹出窗口中有一个输入框,我想在我的主控制器中调用该模态的值。

1 个答案:

答案 0 :(得分:0)

简单方法:

//Modal controller
$rootScope.$broadcast('modal:nameOfModal:onSave', { data: data })

//Any other controller
$scope.$on('modal:nameOfModal:onSave', function(event, data) { ... } )

正确的方式:

  • Modal creator
  • Factory使用代表您需要的每种模态类型的方法
  • Factory(如Factory.confirmationWindow())返回promise的每个方法方法,应该在控制器中单独处理,以获得适当的模态
  • 调用控制器中的内容

    Controller.propotype.openModal = function() {
        ModalsFactory.confirmationModal().then(function(result) {
            //using result inside of your controller
            //if clicked ok
        }).catch(function() {
            //behavior to be called when modal canceled 
        });
    }
    

优点:

  1. 完全分离逻辑
  2. 允许在不同的控制器中定义相同模态的不同行为
  3. 缺点:

    1. ModalsFactory将是大文件