@ViewChild'deki okuma parametresi nedir?


94

Aşağıdaki ifadede {read: ViewContainerRef} ifadesinin anlamını anlamak için yardıma ihtiyacınız var.

@ViewChild('myname', {read: ViewContainerRef}) target;

4
bkz bu
Ankit Singh

Yanıtlar:


119

#mynameŞablon değişkeniyle birlikte öğe etiketiyle ilişkili çeşitli türlerin birkaç örneği olabilir .

Her öğe için bir ElementRefve vardır ViewContainerRef(belki bu etikete uygulanan bileşenlerden veya yönergelerden diğerleri).

Öğe bir bileşense, bileşen örneği vardır.

Öğeye uygulanan bir veya birkaç yönerge de olabilir

Bununla {read: SomeType}birlikte, #mynameşablon değişkenine sahip öğeden hangi türün döndürülmesi gerektiğini söyleyin .

readParametreyi sağlamazsanız @ViewChild(),

  • ElementRef örnek uygulanmış bileşen yoksa veya
  • varsa bileşen örneği.
  • Farklı bir şey elde etmek istiyorsanız, kullanmayı açıkça belirtmeniz gerekir read.

Ayrıca bkz.Bileşen şablonundaki bir öğeyi nasıl seçebilirim?


'belki bu etikete uygulanan bileşenlerden veya yönergelerden başkaları': Olası türlerin tam listesini nasıl alabiliriz?
Ghetolay

directives: [...]Geçerli bileşenin veya PLATFORM_DITECTIVESseçicilerin eşleştiği yerlerde listelenen yönergeler ve bileşenler . Çalışan bir uygulamayı araştırmak için stackoverflow.com/questions/35233572/… adresini kullanabilirsiniz .
Günter Zöchbauer

3
Bu, yalnızca bir düğümle ilişkili Angular türlerini destekler. HTMLElementonlardan biri değil. ElementRef`ElementRef.nativeElement kullanarak HTMLElement'e erişim sağlar.
Günter Zöchbauer

1
Sadece her türlü şeyi deniyorum ve Angular2 kaynağını araştırıyorum.
Günter Zöchbauer

1
Öğe bir bileşen olduğunda yapamazsınız. Sadece kullanırsanız ne istediğinizi belirtebilirsiniz@ViewChild(... read: ElementRef) ...
Günter Zöchbauer
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.