Angular 表格:"No value accessor for ..."

Angular Forms: "No value accessor for ..."

使用 AngularDart Material 包。真的可以在这个错误上使用一些帮助:

"No value accessor for (username) or you may be missing formDirectives in your directives list."

最小设置(formDirectives 在指令列表中指定):

login.html

<form (ngSubmit)="onSubmit()" #form="ngForm">
        <material-input class="username" ngControl="username" [(ngModel)]="username"
            [required]="true"
            [floatingLabel]="true"
            label="Username">
        </material-input>
</form>

login.dart

import 'package:angular/angular.dart';
import 'package:angular_components/angular_components.dart';
import 'package:angular_forms/angular_forms.dart';

@Component(
  selector: 'login',
  styleUrls: const ['style.css'],
  templateUrl: 'login.html',
  directives: const [formDirectives,MaterialInputComponent,]
)
class LoginComponent {

  String username;
  void onSubmit() {}
}

您的指令列表中的 material-input 需要 ControlValueAccessor。

最好使用 materialInputDirectives 而不是直接使用 MaterialInputComponent,因为它具有您可能想要用来与值交互的其他指令。