- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在关注 here 中的文档.我可以将数据传递给对话框,但我没有从中获取数据。我在 .afterClose().subscribe() 上得到了未定义的结果。我错过了什么?我猜我需要在对话框的模板中做一些事情,但上面的文档没有提供示例。这是我的代码:
import {Component, Inject, OnInit} from '@angular/core';
import {MatDialog, MatDialogRef, MAT_DIALOG_DATA} from '@angular/material';
import {MySavior} from '../shared/my-savior';
import {Savior} from '../../savior/shared/savior';
import {SaviorDataService} from '../../savior/shared/savior-data.service';
@Component({
selector: 'app-my-room-savior-select-dialog',
template: 'my data name: {{data.name}}'
})
export class MySaviorSelectDialogComponent {
constructor(public dialogRef: MatDialogRef<MySaviorSelectDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any) {}
onClose(): void {
this.dialogRef.close();
}
}
@Component({
selector: 'app-my-room-my-savior',
templateUrl: './my-savior.component.html',
styleUrls: ['./my-savior.component.css']
})
export class MySaviorComponent implements OnInit {
saviors: Savior[] = [];
mySaviors: MySavior[] = [];
constructor(private saviorDataServ: SaviorDataService, public dialog: MatDialog) {}
ngOnInit() {
...
}
openSelectDialog(): void {
const dialogRef = this.dialog.open(MySaviorSelectDialogComponent, {data: {name: 'test'}});
dialogRef.afterClosed().subscribe(result => {
console.log('result ' + result); //i got result undefined
});
}
}
最佳答案
在我注意到我们可以在 MatDialogRef.close() 上传递数据后,我明白了。
onClose(): void {
this.dialogRef.close('pass data here');
}
文档只提供了 onNoClick() 函数,顺便说一句不需要传递任何数据。另一方面,我认为 onOkClick() 应该或多或少类似于上面的 onClose() 。我不知道他们为什么不将其包含在文档中。
关于angular - 如何从 MatDialog 获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47234823/
我正在对我的应用程序进行单元测试。我是测试新手,因此需要您的帮助。 在我的应用程序中,我创建了一个使用 MatDialog (KDSDialogService) 的服务。我尝试过将许多导入替代方案、我
我正在对我的应用程序进行单元测试。我是测试新手,因此需要您的帮助。 在我的应用程序中,我创建了一个使用 MatDialog (KDSDialogService) 的服务。我尝试过将许多导入替代方案、我
现在可以在两个组件之间进行通信。但不知道如何通过事件发射器将用户(选定)输入的值作为对象从 MatDialog 组件传递到父组件。在这里,我想在单击提交按钮后将选定的选项值和文本区域值作为对象传递。
我是编码新手,也是 Angular 新手,所以我想我会寻求一些帮助。这是我的第一个问题,请耐心等待。 我想为 Angular Material Dialog Service 创建一个包装服务(我只是想
我想向我的应用程序添加一个对话框,但由于某种原因它没有显示。 对话框组件: import { Component, OnInit } from '@angular/core'; import {Mat
它不是作为停留弹出窗口打开,而是作为页面底部左对齐的 block 打开。 我搜索了类似的问题,找到了这个angular2 MdDialog is not appearing as a popup但也不
我正在尝试使用 MatDialog 并基于 this example我已经按如下方式实现了该对话框: import {Component, Inject, OnInit} from '@angular
我正在关注 here 中的文档.我可以将数据传递给对话框,但我没有从中获取数据。我在 .afterClose().subscribe() 上得到了未定义的结果。我错过了什么?我猜我需要在对话框的模板中
我目前正在做一个 Angular 项目。我使用 MatDialog来自 Angular Material 和 drag and drop 的 Angular 模块.我想防止对话框被拖到屏幕窗口之外。有
打开 MatSelect 时在常规页面中,可以通过 MAT_SELECT_SCROLL_STRATEGY 自定义滚动行为注入(inject) token 并使用 NoopScrollStrategy为
如果他空闲 20 分钟,我想提醒用户。所以,创建了一个服务。 它在桌面上运行良好,但在手机中它没有显示,有时如果屏幕在后台停留了几个小时,那么一旦我再次进入页面,注销对话框屏幕就会开始倒计时。 我的意
假设您有 Angular 服务,但没有 ProvideIn,因此它仅在某些组件及其子组件中可用。现在,这样一个组件打开了 MatDialog——是否可以在那里注入(inject)该服务? 正如我所见,
如何将数据发送到作为 ng-template 的 MatDialog? 模板 Open {{data?}} 组件 export class SomeComponent { @Vi
我目前正在使用一个组件,在该组件中单击按钮将打开一个弹出窗口来问候用户。我正在使用 Angular Material Dialog 打开弹出窗口,点击时将调用的组件代码块是 public openMa
完全改写的问题 : 我试图简化问题,因为我理解我最初写下它的方式非常复杂;以下是问题的更简单表示,尽管问题的表示略有不同。 我需要一种方法在顶级组件(即“app”组件)中创建服务的两个实例,并将每个实
是否可以将自定义 CSS 摇动动画添加到 Material MatDialog(例如,如果您在 Form-Dialog 中输入了错误的信息)? 由于对话框是通过 MatDialog 服务实例化的,我不
我已经使用 angular MatDialog 实现了一个模态对话框来代替 alert() 函数。一切正常,但对话框的定位。我无法设法将对话框放在页面的中央。该对话框始终出现在页面的左下角。 html
我已经阅读了几个答案,并且尝试了很多,但我似乎无法让它发挥作用。在我的 Angular 6 应用程序中,我尝试打开一个 MatDialog 但我收到此错误: ERROR Error: Expressi
我试图为重新定位策略中的对话框制作滚动条,但它对我不起作用。 const scrollStrategy = this.overlay.scrollStrategies.reposition(); co
谁能提供一个示例,说明如何将组件动态加载到 Material MatDialog 中? 我想做的是:我将为 MatDialog 配置数据提供一个组件类型,然后对话框将创建一个实例并将其放置在它的 ma
我是一名优秀的程序员,十分优秀!