2016-03-31 20 views
1

tam hata iletisi:Eğik 2 - İSTİSNA: İfade 'o kontrol edildi sonra ngClassUntouched değişti

angular2.dev.js: 23597 İSTİSNA: İfade ':' vardır 12 MyComponent 7 @ içinde ngClassUntouched kontrol edildikten sonra değişti. Önceki değer: 'Doğru'. Mevcut değeri: içinde 'yanlış [olarak ngClassUntouched MyComponent 7 @ 12]

Bu kontrol hata noktası:

<input [(ngModel)]="searchTxt" class="searchText" type="text" 
class="form-control" placeholder="Search all departments & sites" 
(keypress)="handleKeyboard($event)" [ngClass]="{noBorder: tags.length >  
0}" (keyup)="handleKeyboard($event)" autocomplete="off"/> 

Temel olarak, bu, çalıştırma keyUp olay meydana gelir şu komut dinamik olarak oluşturulan girişine searchTxt odak değiştirmek için:

this.inputs.toArray()[0].nativeElement.focus(); 

Daha fazla bilgi:

: Bu girdilerin dinamik olarak oluşturulan dizidir

@ViewChildren('input') inputs; 

Herhangi önerileri:

<div *ngFor="#item of records?.data"> 
<input #input name="r{{item.id}}" class="focusInputBox" type="text"/> 
</div> 

olanlar girişler bir sonucudur?

ty !!!

GÜNCELLEME: class = "form kontrol SEARCHTEXT ng-bakir ng-geçerli ng-kirli"

searchTxt içine ng-bakir artırmalar ekledi var: Ben açısal searchTxt üzerinde birkaç sınıfları eklendi fark Giriş kutularının odağını ayarlıyorum.

setTimeout(() => { 
    this.inputs.toArray()[0].nativeElement.focus(); 
}, 0); 
+0

Etiketler listenizi nasıl yüklersiniz? Teşekkürler! –

+0

Bu eksik bilgi. lütfen daha fazla kod ile gel. – micronyks

cevap

1

Wrap odak() setTimeout(...) bu sınıf Eğik bir değişiklik beklemediğini bir anda ayarlanmasına neden olur yöntemi:

constructor(private cdr: ChangeDetectorRef) {} 

ngOnInit() { 
    this.cdr.detectChanges(); 
} 

o etiketlerinizi yüklemek yolda bağlı olduğundan bu yöntemin çağrı başka bir yerde yapılabilir ...

+0

Nope :(Hiçbir şey ilgili ... bu arada ... güncellememi kontrol edin ve birkaç araştırma yaptım ve değişiklik tespitinde bir şeyler oluyor gibi görünüyor, ama anlayamadım. –

+0

Cevabımı güncelledim –

+0

Vay canına! Ty !! Ama neden bunun neden olduğunu ve bunun çözümü nasıl dert ettiğini biliyor musun? –

1

Belki de bileşenine ChangeDetectorRef enjekte edebilir ve detectChanges çağırır:

+1

Ty, Thiery! Gunter bana çözümü verdi, ama ben de sizinişleri farklı bir bakış açısıyla yapmak. –