'HTMLFormElement' 类型的参数不可分配给 'ElementRef<any>' 类型的参数
Argument of type 'HTMLFormElement' is not assignable to parameter of type 'ElementRef<any>'
我正在使用 angular 并创建一个表单元素。
我里面有这个app.component.html,
<form (ngSubmit)="onSubmit(f)" #f></form>
还有这个里面app.component.ts,
import { Component, ElementRef } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
onSubmit(form: ElementRef){
alert('ss');
}
}
但是出现这个错误。
src/app/app.component.html:16:34 - error TS2345: Argument of type
'HTMLFormElement' is not assignable to parameter of type
'ElementRef'. Property 'nativeElement' is missing in type
'HTMLFormElement' but required in type 'ElementRef'.
16 <form (ngSubmit)="onSubmit(f)" #f>
我不认为你可以这样做。根据Angular NgForm,你可以这样尝试:
<form #f="ngForm" (ngSubmit)="onSubmit(f)" novalidate>
...
</form>
import {NgForm} from '@angular/forms';
...
onSubmit(f: NgForm) {
console.log(f.value);
console.log(f.valid);
}
我正在使用 angular 并创建一个表单元素。
我里面有这个app.component.html,
<form (ngSubmit)="onSubmit(f)" #f></form>
还有这个里面app.component.ts,
import { Component, ElementRef } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
onSubmit(form: ElementRef){
alert('ss');
}
}
但是出现这个错误。
src/app/app.component.html:16:34 - error TS2345: Argument of type 'HTMLFormElement' is not assignable to parameter of type 'ElementRef'. Property 'nativeElement' is missing in type 'HTMLFormElement' but required in type 'ElementRef'.
16 <form (ngSubmit)="onSubmit(f)" #f>
我不认为你可以这样做。根据Angular NgForm,你可以这样尝试:
<form #f="ngForm" (ngSubmit)="onSubmit(f)" novalidate>
...
</form>
import {NgForm} from '@angular/forms';
...
onSubmit(f: NgForm) {
console.log(f.value);
console.log(f.valid);
}