繁体   English   中英

将数据从组件传递到角度为4的模态对话框

[英]Pass data from a component to a modal dialog in angular 4

我有一个angular 4应用程序,我有2个组件,一个时间轴和一个模态对话框。 当我双击时间线时,我想打开模态对话框,并将数据传递给双击功能。

因此,在timeline.component.ts中,我有:

        Timeline.prototype.onTaskDoubleClick = function(task){
            console.log("Double click on task" + task.id);
            console.log(task);
            $('#addProjectForm').click();
        }

如何将对象“任务”从该函数传递给模态组件?

使用@Input@Output作为流。

创建一个组件container ,以及其他两个容器的时间轴和模式

在容器组件中同时注入时间线和模式。

现在单击“时间轴”组件,使用以下命令

clickEmitter = new EventEmitter<task: any>()

doubleClick(task: any) {
  this.clickEmitter.emit(task);
}

现在,将此输出绑定到容器组件,如下所示

<timeline  (clickEmitter)="clickHandler($event)"></timeline>
<modal [task]="modalInput"></modal>

现在,任务容器可以从conatiner中获取此信息,如下所示。

在容器组件中

modalInput: any;

clickHandler(task) {
  this.modalInput = task;
}

现在,这可以通过Modal组件接收,如下所示:

@Input
task

暂无
暂无

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

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