In meinen Komponentenobjekten, habe ich eine Reihe von Zeilen, die mit Daten von Back-End-Bind ob ein Array von Array
this.rows = []; // somehow put data inside
in jedem dynamisch bevölkert ist, die ein weiteres Element ist auch eine Reihe von Säulen , die auch vom Backend generiert werden.
const row = {
ColorId: 0,
SizeId: 0,
Quantity: 0,
Fields: this.Product.Personalizations.map(p => {
return {
Value: '',
ID: p.ID,
Required: p.Required,
Price: p.Price,
Description: p.Description,
Name: p.Name
}
})
};
this.rows.push(row);
Ich versuche jedes Field
an einen Eingang wie dieses
<div class="bulk-order-row"
[ngClass]="{'active-bulk-row': editingOnMobile}"
*ngFor="let row of rows; let i = index;">
...
<div class="col-personalization" *ngFor="let field of row.Fields">
<div class="form-group">
<label class="hidden-md-up">{{field.Name}}</label>
<input type="text" class="form-control-alt" [required]="field.Required"
[(ngModel)]="field.Value" name="{{field.Name}}" id="{{field.ID}}">
</div>
</div>
zu binden scheint, wie die Felder richtig gebunden sind, aber jedes Mal, wenn ich hängen Sie eine neue Zeile alle Eingabefelder leer geworden ? Wenn ich die tatsächlichen Werte in this.rows
überprüfe, sehe ich, dass sie dort sind. Warum die input
leer werden?
könnte auf 'this.Product.Personalizations.map bezogen werden (p => {' neu bewertet wird, um eine Plunker wäre hilfreich zu untersuchen. –
hier ist die minimale Plunk: https://plnr.r.co/edit/nm3y6MrR4kh0n8Sq6XwU die Art, wie ich es sehe, das Problem wird erstellt von [erforderlich]. Klicken Sie auf [AddRow] füllen Sie einige Werte, dann [ Zeile hinzufügen] noch einmal, Felder Werte sind weg – Eugen