ngMocks.findTemplateRef
Mevcut öğeye veya onun herhangi bir alt öğesine ait olan ilk bulunan TemplateRef
'yi döndürür. Eğer öğe belirtilmemişse, mevcut fixture kullanılır.
ngMocks.findTemplateRef( fixture?, directive, notFoundValue? )
ngMocks.findTemplateRef( debugElement?, id, notFoundValue? )
ngMocks.findTemplateRef( debugElement?, [attribute, value?], notFoundValue? )
veya ngMocks.find
tarafından desteklenen seçiciler ile basitçe.
ngMocks.findTemplateRef( cssSelector?, [attribute, value?], notFoundValue? )
Direktif
Bir şablonun aşağıdaki kodu içerdiğini varsayalım.
<ng-template my-directive-1></ng-template>
<span *my-directive-2></span>
O zaman ng-template
'yi şöyle bulabiliriz:
const tpl1 = ngMocks.findTemplateRef(MyDirective1);
const tpl2 = ngMocks.findTemplateRef(MyDirective2);
Id
Bir şablonun aşağıdaki kodu içerdiğini varsayalım.
<ng-template #header></ng-template>
<ng-template #footer></ng-template>
O zaman ng-template
'yi şöyle bulabiliriz:
const tplHeader = ngMocks.findTemplateRef('header');
const tplFooter = ngMocks.findTemplateRef('footer');
Attribute seçici
Bir şablonun aşağıdaki kodu içerdiğini varsayalım.
<ng-template mat-row></ng-template>
<ng-template mat-cell></ng-template>
O zaman ng-template
'yi şöyle bulabiliriz:
const tplRow = ngMocks.findTemplateRef(['mat-row']);
const tplCell = ngMocks.findTemplateRef(['mat-cell']);
bilgi
Dikkat edin ki bir tuple kullanılıyor, aksi takdirde ID araması yapılır.
Değer ile Girdi
Bir şablonun aşağıdaki kodu içerdiğini varsayalım.
<ng-template myTpl="header"></ng-template>
<ng-template [myTpl]="property"></ng-template>
O zaman ng-template
'yi şöyle bulabiliriz:
const tplHeader = ngMocks.findTemplateRef(['myTpl', 'header']);
const tplInput = ngMocks.findTemplateRef(['myTpl', property]);
tehlike
Dikkat edin ki property
bir değişkendir.