子组件不向父组件的功能发射值
Child component not emitting value to parent component's function
我在我的父组件中定义了一个名为 login
的函数:
login(user: any) {
console.log(user);
}
然后我有一个登录表单组件:
export class LoginFormComponent {
@Output() onLogin: EventEmitter = new EventEmitter();
constructor() {
this.user = {};
}
}
我是这样使用的:
<login-form (onLogin)="login(user)"></login-form>
看起来像这样:
<input type="email" [(ngModel)]="user.email">
<input type="password" [(ngModel)]="user.password">
在这个组件中我有一个简单的按钮,它应该执行 onLogin
函数并将用户从 login-form
组件传递到外部组件:
<button (click)="onLogin.emit(user)">Login</button>
问题是 user
在 login
函数中总是未定义。
为什么 user
没有从 login-form
发送到我的父组件?
需要使用特殊标识符$event
来获取传递的发射值:
<login-form (onLogin)="login($event)"></login-form>
user
指的是组件class.
的user
属性
我在我的父组件中定义了一个名为 login
的函数:
login(user: any) {
console.log(user);
}
然后我有一个登录表单组件:
export class LoginFormComponent {
@Output() onLogin: EventEmitter = new EventEmitter();
constructor() {
this.user = {};
}
}
我是这样使用的:
<login-form (onLogin)="login(user)"></login-form>
看起来像这样:
<input type="email" [(ngModel)]="user.email">
<input type="password" [(ngModel)]="user.password">
在这个组件中我有一个简单的按钮,它应该执行 onLogin
函数并将用户从 login-form
组件传递到外部组件:
<button (click)="onLogin.emit(user)">Login</button>
问题是 user
在 login
函数中总是未定义。
为什么 user
没有从 login-form
发送到我的父组件?
需要使用特殊标识符$event
来获取传递的发射值:
<login-form (onLogin)="login($event)"></login-form>
user
指的是组件class.
user
属性