从子组件向父组件传递数据时出错

时间:2019-02-14 10:59:30

标签: angular

我正在使用Angular 7应用程序。 我正在尝试将数据从子组件发送到父组件,因为我正在使用@Output装饰器和EventEmitter。

 @Output() token:EventEmitter<any> = new EventEmitter<any>();

我遇到了错误:

  src / app / header / header.component.ts(96,6)中的

ERROR:错误TS2322:   不能将'string'类型分配给'EventEmitter'类型。

我在这里尝试发送值:

token == eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJVc2VySWQiOiI1MmYzZWEyMC0yMDQzLTQ5MjQtODg3Ny0yNTAzZTZkOTZmNTEiLCJleHAiOjE1ODE2NzQ4OTcsImlzcyI6Ik1hZ2ljTWluZCIsImF1ZCI6Ik1hZ2ljTWluZCJ9.DMcMPgM0B2hZRR-qSIQyIG9SDt_q_G9WON3ZtRXX78I

2 个答案:

答案 0 :(得分:0)

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

this.token.emit(tokenValue); // emit the value to the parent

并且,在父.HTML中,您需要捕获事件:

<child (token)="tokenEvent($event)"></child>

答案 1 :(得分:0)

仅当您发出该值时,父级才会接收令牌事件

function countdown(num) { const arr = []; for (let i = num; i > 0; i--) { arr.push(i); } return arr; }; console.log(countdown(10));

而且,在父级上,您需要执行以下操作:

this.token.emit(tokenValue);

使用示例:https://angular.io/api/core/EventEmitter#usage-notes