启动时角度材质对话框组件滚动问题

ton*_*nyf 1 css angular-material angular angular-material-5

我在我的应用程序中使用 Angular Material Dialog 组件,并在此对话框中,我向用户呈现一个可能有滚动条的 HTML 数据表。

但我的问题是,当我单击按钮打开实际对话框时,我注意到内容立即滚动到底部,这很麻烦,因为我需要手动滚动回顶部。

我正在使用此处描述的标准设置:

https://material.angular.io/components/dialog/overview

我的对话调用如下:

myDialog(a: string, b: string) {
        let dialogRef = this.dialog.open(MyDialogComponent, {
            height: '500px',
            width: '800px',
            data: { a,b }
        });
}
Run Code Online (Sandbox Code Playgroud)

我该如何避免滚动到底部的问题?我尝试过一些CSS,例如top: 0; position: fixed;但无济于事。

小智 7

您遇到这种情况的原因是,对话框组件自动聚焦于 HTML 内容中的第一个输入/按钮。您应该将“autoFocus: false”添加到对话框选项中以防止出现这种情况。

myDialog(a: string, b: string) {
    let dialogRef = this.dialog.open(MyDialogComponent, {
        height: '500px',
        width: '800px',
        autoFocus: false,
        data: { a,b }
    });
}
Run Code Online (Sandbox Code Playgroud)