login.component.html
<form class="login-form" name="login-form" #loginForm="ngForm" (ngSubmit)="checkLogin(loginForm)">
<input type="text" placeholder="Username" name="userId" [(ngModel)]="userModel.userId" #userId="ngModel" required />
<input type="password" name="userPwd" placeholder="Password" [(ngModel)]="userModel.userPwd" #userPwd="ngModel" required
/>
</form>
login.component.ts
checkLogin(loginForm) {
let loginFormData = loginForm.value;
this.sessionTime = Date.now();
loginFormData.sessionTime = this.sessionTime;
...
...
...
}
admin.component.ts
export class AdminComponent implements OnInit{
@ViewChild(LoginComponent) child: LoginComponent;
ngAfterViewInit() {
console.log(this.child.checkLogin()); //as agruments is not passed am getting error
}
如果我传递参数说checkLogin(form:LoginForm)收到错误 但是在上面的方式中,我可以通过共享示例文本来尝试从一个组件到另一个组件共享数据。问题在于使用参数的共享方法。 任何人都可以帮我解决这个问题。
答案 0 :(得分:0)
您可以将loginForm用作控制器的公共字段。 通过这种方式,您的方法checkLogin将不会接受任何参数,您可以无错误地调用它。