【发布时间】:2017-11-07 01:15:20
【问题描述】:
我有父子组件,从子组件需要触发父组件功能。
Parent.component.ts
loadData(event) {
console.log(event);
}
Parent.component.html
<app-project (uploaded)="loadData($event)" ></app-project>
child.component.ts
@Output() uploaded:EventEmitter<any> = new EventEmitter();
ngOnInit() {
this.uploaded.emit('complete'); // Worked
}
loadProject(){
this.uploaded.emit('complete'); // Not triggering the parent function
}
child.component.html
<button type="button" (click)="loadProject(project)" label="Load Project"></button>
不知道这有什么问题,但从 ngOnInit 开始工作。
从 child.component.html 调用 loadProject。
【问题讨论】:
-
从哪里调用
loadProject()? -
child.component.ts 中有一个函数 (editProject) 从那里调用 editProject(project: Project) { this.uploaded.emit('complete'); }
-
也许编辑您的问题是一个更好的主意,因为 cmets 中的代码很难阅读。还请添加调用
editProject()的信息。 -
我确信
someMethod($event)在这两种情况下都会被调用。someMethod() { ... }长什么样子? -
那么问题或疑问是什么?
标签: angular typescript