尝试使用看看我在这里给出的答案。
我想从当前循环索引中分配模型值,但它不起作用. 对此有任何想法
https://plnkr.co/edit/YccCBF98vCetWXJa1UJX?p=preview
<p *ngFor="let person of peoples; let i = index;">
<input type="hidden" [(ngModel)]="person.displayOrder" [value]="i+1" />
</p>
为此,我们需要创建一个自定义管道:
.HTML:
<div>
<h2>Hello {{name}}</h2>
<p *ngFor="let person of (peoples | changeOrder); let i= index;">
{{person.name}} <input type="text" name='{{i}}' [(ngModel)]="person.order" />
</p>
</div>
定制管道 :
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({ name: 'changeOrder' })
export class changeOrder implements PipeTransform {
transform(allPeoples) {
return allPeoples.map( ( val ,index) => { val.order = index; return val; });
}
}
目录 :
@NgModule({
imports: [ BrowserModule,FormsModule ],
declarations: [ App , changeOrder ],
bootstrap: [ App ]
})
她的是Plunker的链接,请看一下。
ngValue
而不是value
。编辑
抱歉,ngValue
是选择的选项,您有输入。 我尝试了您的初始代码并且工作正常。你的错误是什么?