Angularjs 如何使用“角度材质”对话框在控制器上调用函数

Angularjs 如何使用“角度材质”对话框在控制器上调用函数,angularjs,angular-material,Angularjs,Angular Material,我有一个基于angular 1.5 typescript的应用程序,使用angular材质 如何从对话框调用控制器中的函数 在我的示例中,我希望在用户确认后调用.callBack() 代码片段 public delete(condition: ModelModule.Condition): void { var confirm = this.$mdDialog.confirm() .title('delete condition!')

我有一个基于angular 1.5 typescript的应用程序,使用angular材质

如何从对话框调用控制器中的函数

在我的示例中,我希望在用户确认后调用.callBack()

代码片段

 public delete(condition: ModelModule.Condition): void {
        var confirm = this.$mdDialog.confirm()
            .title('delete condition!')
            .textContent('are you sure ?')
            .ariaLabel('delete')
            .ok('Ok')
            .cancel('Cancel');

        this.$mdDialog.show(confirm).then(function(answer) {
             console.log("You decided to delete "+answer)
        // how to call this function on my controller ???              
        this.callBack()

        }, function() {
            console.log("You decided cancel")
        });
    }

您的
指的是
功能
,而不是控制器。不要在Typescript中使用
函数
,而是使用箭头函数,它不会在此上下文中创建新的

public delete(condition: ModelModule.Condition): void {
    var confirm = this.$mdDialog.confirm()
        .title('delete condition!')
        .textContent('are you sure ?')
        .ariaLabel('delete')
        .ok('Ok')
        .cancel('Cancel');

    this.$mdDialog.show(confirm).then((answer) => {
         console.log("You decided to delete " + answer);
         this.callBack();
    }, () => {
        console.log("You decided cancel");
    });
}

您的
指的是
功能,而不是控制器。不要在Typescript中使用
函数
,而是使用箭头函数,它不会在此上下文中创建新的

public delete(condition: ModelModule.Condition): void {
    var confirm = this.$mdDialog.confirm()
        .title('delete condition!')
        .textContent('are you sure ?')
        .ariaLabel('delete')
        .ok('Ok')
        .cancel('Cancel');

    this.$mdDialog.show(confirm).then((answer) => {
         console.log("You decided to delete " + answer);
         this.callBack();
    }, () => {
        console.log("You decided cancel");
    });
}

这里有什么问题?在我看来,它似乎可以很好地处理postedit失败的代码:angular.js:14110 TypeError:Cannot read undefinedI的属性“callBack”我自己找到了一个解决方案。通过将“this”复制到您自己的语言环境变量//复制到变量来启动函数调用,否则无法调用其他函数var=this。。。剩下的功能这里有什么问题?在我看来,它似乎可以很好地处理postedit失败的代码:angular.js:14110 TypeError:Cannot read undefinedI的属性“callBack”我自己找到了一个解决方案。通过将“this”复制到您自己的语言环境变量//复制到变量来启动函数调用,否则无法调用其他函数var=this。。。剩余功能