Angular2 utilise [(ngModel)] avec [ngModelOptions] = "{standalone: ​​true}" pour lier à une référence à la propriété du modèle

Disons que j'ai un tapuscrit objet de type Mailtype comme suit:

export class Mailtype {
  constructor(
    public name?: string,
    public locale?: string,
    public email?: string,
    public properties? : Property[]
  ) {  }
}

Où ses "propriétés" champ d'un tableau de type de Propriété:

export class Property {
  constructor(
    public name?: string,
    public type?: string,
    public example?: string,
    public required?: boolean,
    public masked?: boolean
  ) {  }
}

Maintenant dans mon composant, j'ai un seul Mailtype objet et le html est un élément de formulaire utilisé pour l'édition et l'ajout de propriétés de la matrice de la Mailtype:

<form>
   <tr *ngFor="let property of model.properties; let i=index">
          <td>
            <input type="text" [(ngModel)]="property.name" required>
          </td>
  </tr>
  <button (click)="onAddProperty()">Add property</button>
</form>

composant:

export class MailtypeComponent {
  model : Mailtype;
  constructor() {
    this.model = new Mailtype('','','',[]);
    this.model.properties.push(new Property());
  }

  onAddProperty() {
    this.model.properties.push(new Property());
  }
}

Je me demandais si je ne suis pas autorisé à utiliser [(ngModel)] lien vers une référence de la "propriété" de l'élément du tableau dans le tableau, en particulier en même temps, je suis en itérant le tableau? Parce qu'il jette l'erreur suivante pour le code ci-dessus:

ORIGINAL EXCEPTION: If ngModel is used within a form tag, either the name attribute must be set
                      or the form control must be defined as 'standalone' in ngModelOptions.

                      Example 1: <input [(ngModel)]="person.firstName" name="first">
                      Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}">

Il est donc suggérant j'utilise soit [ngModelOptions]="{standalone: true}" ou ajouter un nom de domaine pour le html. Et il semble que [ngModelOptions]="{standalone: true}" fonctionne dans ce cas. Pourquoi ne standalone: true signifie, en fait, depuis que je ne trouve aucune documentation à ce sujet?

source d'informationauteur Calvin Hu | 2016-07-14