我已经开始学习 Angular 5 的材料设计,我的要求是我必须显示角度材料对话框始终固定在屏幕的右侧。默认情况下,它始终位于屏幕中央。如何导入在屏幕右侧显示对话框?请帮忙。
import { MatDialog, MatDialogRef, MAT_DIALOG_DATA, MatDialogConfig }
from '@angular/material';
我的网页:
<div class="add-contact-btn" fxFlex="10">
<button mat-raised-button (click)="openDialog()">add contact</button>
</div>
openDialog(): void {
const dialogRef = this.dialog.open(ContactsComponent, {
width: '250px'
});
dialogRef.afterClosed().subscribe(result => {
console.log('The dialog was closed');
});
}
我对我的应用程序也有类似的要求。我重用了你的代码来演示我是如何做到的。通过这种方式,我能够在我单击的位置显示对话框。
.HTML:
<div class="add-contact-btn" fxFlex="10">
<button mat-raised-button (click)="openDialog($event)">add contact</button>
</div>
脚本:
openDialog(event): void {
const dialogPosition: DialogPosition = {
top: event.y + 'px',
left: event.x + 'px'
};
const dialogRef = this.dialog.open(ContactsComponent, {
width: '250px',
position: dialogPosition
});
dialogRef.afterClosed().subscribe(result => {
console.log('The dialog was closed');
});
}
试试这个
const dialogRef = this.dialog.open(ContactsComponent, {
width: '250px'
position: { right: '0'}
});
您还可以添加 top:0 等。