【发布时间】:2018-04-22 09:03:24
【问题描述】:
我正在尝试在子组件上调用父组件函数,并像这样实现。
project-form.component.ts
@Component({
selector: 'app-project-form',
templateUrl: './project-form.component.html',
styleUrls: ['./project-form.component.css'],
encapsulation: ViewEncapsulation.None
})
export class ProjectFormComponent implements OnInit {
@Input() project: Project;
@Output() createProject = new EventEmitter<string>();
newProject() {
console.log("submit");
this.createProject.emit('submit');
}
}
project-form.component.html
<button (click)="newProject()" class = "btn-success" >New</button>
project-view.component.ts
export class ProjectViewComponent implements OnInit {
projects: Project[];
projectform: Project;
createProject(event){
console.log("create Project on parent component");
}
}
project-view.component.html
<app-project-form [project]="projectform" (createProject)="createProject($event)"></app-project-form>
这里当我点击子组件的New按钮时,我只能在控制台看到"submit",而看不到"create Project on parent component"。
这意味着没有发出事件或没有收到父事件。
基本上,我错过了一些东西。
请为我分享任何类型的热门歌曲。
【问题讨论】:
标签: angular typescript components eventemitter