繁体   English   中英

角材料对话框被隐藏

[英]Angular material dialog is hidden

我已经在应用程序中实现了Angular材质对话框。 但是,该对话框没有显示,而是隐藏在我的组件下方。 为了使这个问题有点清楚,我添加了一些图像。

显示主要组件的对话框组件

对话框组件隐藏了我的主要组件

所以我的问题是如何将对话框置于视图之上?

更新:

我没有控制台错误,我遵循了材料网站Angular Material Dialog上的教程。 因此,除了以下组件和代码外,没有多余的CSS或任何内容:

打开对话框的主要组件(EditComponent)

import { Component, OnInit, ViewEncapsulation, Inject } from '@angular/core';
import {MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material';
import { Result } from '../Types/result';
import { ResultService } from '../result.service';
import { LanguageService } from '../language.service';
import { Router } from '@angular/router';
import { Process } from '../Types/process';
import { onLoadDown, onLoadAppear } from '../animations';
import { EditDialogComponent } from '../edit-dialog/edit-dialog.component';

@Component({
  selector: 'app-edit',
  templateUrl: './edit.component.html',
  styleUrls: ['./edit.component.css'],
  animations: [onLoadDown, onLoadAppear],
  encapsulation: ViewEncapsulation.None
})
export class EditComponent implements OnInit {
  results: Result[] = new Array();

  constructor(private resultService: ResultService, private languageService: LanguageService,
    private router: Router, public dialog: MatDialog) { }

  ngOnInit() {
    this.results = this.resultService.getResults();
    console.log(this.results);
  }

  openDialog(editResult: Result): void {
    const dialogRef = this.dialog.open(EditDialogComponent, {
      width: '250px',
      data: { result: editResult}
    });
  }


}

对话框组件(EditDialogComponent)

import { Component, OnInit, Inject, ViewEncapsulation } from '@angular/core';
import {MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material';
import { ResultService } from '../result.service';
import { Router } from '@angular/router';
import { LanguageService } from '../language.service';

@Component({
  selector: 'app-edit-dialog',
  templateUrl: './edit-dialog.component.html',
  styleUrls: ['./edit-dialog.component.css'],
  encapsulation: ViewEncapsulation.None
})
export class EditDialogComponent {

  constructor(
    public dialogRef: MatDialogRef<EditDialogComponent>,
    @Inject(MAT_DIALOG_DATA) public data: any, private resultService: ResultService,
    private router: Router, private languageService: LanguageService) {
     }

  onNoClick(): void {
    this.dialogRef.close();
  }
}

当您不提供任何角度材料样式时,就会发生这种情况。 我建议将一个导入您的styles.css文件。

@import '~@angular/material/prebuilt-themes/deeppurple-amber.css';

或者,您可以创建自己的样式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM