EventEmitter在Angular5中不起作用,如何使其运行?

时间:2019-06-07 18:09:28

标签: angular typescript rxjs

我花了4个小时的时间来解决这个问题,我检查了很多代码,尽管我以相同的方式进行编码,但对我来说没有任何作用。

我有父级和子级,我希望子级组件触发父级中的一种方法。让我展示我的代码,我的代码有什么问题?

child.ts

@Component({
  selector: 'app-card',
  templateUrl: './card.component.html',
  styleUrls: ['./card.component.css']
})
export class ChildComponent implements OnInit {
  @Input() cardMode: CardMode;
  @Input() cardItem: CardModel;

  @Output()
  cardSelected: EventEmitter<string> = new EventEmitter<string>();

.......
 cardClick(): void {
    this.cardSelected.emit("aaaa");
  }
.......
}

child.html

<a (click) ="cardClick()"> 
     .....
</a>

parent.ts

export class ParentComponent implements OnInit {
.......
 onCardSelected(event) {
    console.log(event);
  }

}

parent.html

<app-card [cardItem]="activeCard" [cardMode]="CardMode.Detail"
              (cardSelected) = "onCardSelected($event)" >
 </app-card>

当孩子的onclick工作正常时,在send(“ aaaa”);父方法未触发之后。我错过了哪个问题?

0 个答案:

没有答案