我正在使用nativescript构建一个组件,我收到以下错误“没有指定名称属性的表单控件的值访问器”
我做同样的事情,我觉得我已经在其他组件中完成了没有问题,所以我无法理解为什么它不起作用。
首先,这是来自friend.component.ts的相关代码:
import { Component, ElementRef, ViewChild } from "@angular/core";
import { TextField } from "ui/text-field";
@Component({
selector: "Friends",
templateUrl: "controller/friend/friend.component.xhtml",
})
export class FriendComponent
{
friendName: string;
@ViewChild("friendNameTextField") friendNameTextField: ElementRef;
constructor() {
this.friendName = "";
}
}
这是来自controller / friend / friend.component.xhtml的代码
<GridLayout rows="auto, *">
<GridLayout row="0" columns="*, auto">
<Textfield col="0" #friendNameTextField [(ngModel)]="friendName" hint="Search for friend"></Textfield>
<Label col="1" text="+ Add Friend" (tap)="addFriend()"></Label>
</GridLayout>
</GridLayout>
我读到如果没有包含NativeScriptFormsModule会发生这种情况,但我在app.module.ts中有这个:
import { NativeScriptFormsModule } from "nativescript-angular/forms";
@NgModule({
imports: [
NativeScriptModule,
NativeScriptFormsModule,
NativeScriptHttpModule,
NativeScriptRouterModule,
NativeScriptRouterModule.forRoot(routes)
],
declarations: [
AppComponent,
...navigatableComponents,
],
bootstrap: [AppComponent],
})
export class AppModule {}
我已经删除了一些代码,我仍然是Nativescript的新手,所以我可能会留下一些相关的东西。如果我错过了什么,请告诉我你还需要什么,我会发布它。
谢谢。
答案 0 :(得分:3)
几小时后解决了我的问题。
我有:
<Textfield>
而不是
<TextField>
我不会忘记上一课。