Javascript MDC web组件:MDC对话框不';我有时关不好

Javascript MDC web组件:MDC对话框不';我有时关不好,javascript,web,material-design,material-components,material-components-web,Javascript,Web,Material Design,Material Components,Material Components Web,我使用MDCWeb组件。我以编程方式打开和关闭对话框,但有时它不会关闭。我不知道关闭对话框的方法是否正确 closeDialog('dialog_gui'); function closeDialog(elementId){ let dialog = new mdc.dialog.MDCDialog(document.getElementById(elementId)); dialog.close(); } 每次关闭对话框时,函数都会创建MDCDialog的新实例。应将对话框

我使用MDCWeb组件。我以编程方式打开和关闭对话框,但有时它不会关闭。我不知道关闭对话框的方法是否正确

closeDialog('dialog_gui');

function closeDialog(elementId){
    let dialog = new mdc.dialog.MDCDialog(document.getElementById(elementId));
    dialog.close();
}

每次关闭对话框时,函数都会创建MDCDialog的新实例。应将对话框实例存储在关闭函数之外:

const dialog = new mdc.dialog.MDCDialog(document.getElementById('dialog_gui'));

function closeDialog() {
  // some stuff
  dialog.close();
}

closeDialog();
此外,只需使用MDCDialog的
close()
方法即可关闭对话框,而无需额外的功能:

const dialog = new mdc.dialog.MDCDialog(document.getElementById('dialog_gui'));

dialog.close();
在这里,对话框将被打开,然后在3秒钟后关闭