Ana içeriğe geç

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.