Javascript 将值从md对话框传递到组件

Javascript 将值从md对话框传递到组件,javascript,angularjs,components,material-design,mddialog,Javascript,Angularjs,Components,Material Design,Mddialog,我正在使用angular 1.X框架,在使用组件时遇到了一个问题 我想在对话框或面板中使用组件。但我的问题是,我无法从对话控制器中获得组件中需要的值。我试图绕过对话控制器,但也没有成功 这是我在控制器中的一个函数: ctrl.addAdjustments = function (event) { $mdDialog.show({ template: '<add-adjustments-dialog close="$ctrl.close"><

我正在使用angular 1.X框架,在使用组件时遇到了一个问题

我想在对话框或面板中使用组件。但我的问题是,我无法从对话控制器中获得组件中需要的值。我试图绕过对话控制器,但也没有成功

这是我在控制器中的一个函数:

ctrl.addAdjustments = function (event) {
        $mdDialog.show({
            template: '<add-adjustments-dialog close="$ctrl.close"></add-adjustments-dialog>',
            controller: function ($mdDialog) {
                var ctrl = this;

                ctrl.close = function (adjustment) {
                    $mdDialog.hide(adjustment);
                }
            },
            parent: angular.element(document.body),
            targetEvent: event,
            clickOutsideToClose: true
        })
            .then(function (adjustment) {
                console.log('adjustment', adjustment);
            });
    };
  angular.module('app')
    .component('addAdjustmentsDialog', {
        templateUrl: 'app/components/addAdjustmentsDialog/addAdjustmentsDialog.html',
        controller: addAdjustmentsDialogCntrlr,
        bindings: {
            close: '<'
        }
    });

/** @ngInject */
function addAdjustmentsDialogCntrlr() {
    var ctrl = this;

    ctrl.adjustment = {
        weight: 0,
        amount: 0,
        type: '',
        regions: []
    };

    console.log('close fnction', ctrl.b);

    ctrl.addAdjustment = function(){
        ctrl.close();
    }


}
ctrl.addAdjustments=函数(事件){
$mdDialog.show({
模板:“”,
控制器:函数($mdDialog){
var ctrl=this;
ctrl.close=功能(调整){
$mdDialog.hide(调整);
}
},
父元素:angular.element(document.body),
目标事件:事件,
单击外部以关闭:true
})
.然后(功能(调整){
控制台日志(“调整”,调整);
});
};
如您所见,我正在使用模板参数中的components html标记,这是有效的。我在dialogs控制器中创建了一个函数表达式,然后尝试将变量绑定到组件

这是我的组件控制器:

ctrl.addAdjustments = function (event) {
        $mdDialog.show({
            template: '<add-adjustments-dialog close="$ctrl.close"></add-adjustments-dialog>',
            controller: function ($mdDialog) {
                var ctrl = this;

                ctrl.close = function (adjustment) {
                    $mdDialog.hide(adjustment);
                }
            },
            parent: angular.element(document.body),
            targetEvent: event,
            clickOutsideToClose: true
        })
            .then(function (adjustment) {
                console.log('adjustment', adjustment);
            });
    };
  angular.module('app')
    .component('addAdjustmentsDialog', {
        templateUrl: 'app/components/addAdjustmentsDialog/addAdjustmentsDialog.html',
        controller: addAdjustmentsDialogCntrlr,
        bindings: {
            close: '<'
        }
    });

/** @ngInject */
function addAdjustmentsDialogCntrlr() {
    var ctrl = this;

    ctrl.adjustment = {
        weight: 0,
        amount: 0,
        type: '',
        regions: []
    };

    console.log('close fnction', ctrl.b);

    ctrl.addAdjustment = function(){
        ctrl.close();
    }


}
angular.module('app')
.component('addAdjustmentsDialog'{
templateUrl:'app/components/addAdjustmentsDialog/addAdjustmentsDialog.html',
控制器:addAdjustmentsDialogCntrlr,
绑定:{
结束:'