【发布时间】:2018-08-06 09:31:30
【问题描述】:
我想使用 Angular 材质对话框创建一个是/否函数,该函数根据是否按下是或否返回真或假。在是/否对话框中,我有这些按钮:
<button [mat-dialog-close]="true">Yes</button>
<button [mat-dialog-close]="false">No</button>
在我的dialogservice 中,我通过这样做将这个是/否对话框称为:
Yes_No_Prompt(pMessageLines: string[]) {
const yesNoDialog = this.matdialog.open(DlgYesNoComponent, {
data: {
MessageLines: pMessageLines
}
});
yesNoDialog.afterClosed().subscribe(
(result: boolean) => {
return result;
}
);
}
但是如何让这个函数等待return result 行呢?因为我现在想通过执行以下操作来使用此功能:
if (this.dialogservice.Yes_No_Prompt()) {
// something is true (pressed yes)
} else {
// something if false (pressed no)
}
我需要等待return result 行,但我不知道怎么做。也许是一个承诺?
【问题讨论】:
-
P.S.命名函数时考虑使用
camelCase而不是下划线。 -
@Edric 你介意解释一下为什么是 Edric 吗?我觉得你可以使用任何你想要的约定。我们的团队使用骆驼表示变量,使用下划线表示函数,用破折号表示 css……真的很重要吗?
-
IMO,我很习惯使用
camelCase来处理函数,但这只是我的看法。我同意你的观点,可以使用任何编码约定。 -
@Edric 好吧,那都是好人。老实说,我想这根本不重要。只要团队决定使用约定。
标签: angular promise return angular-material