2017-07-12 1 views
6

Wie das folgende Schlüsselwort in angular2 ng-Vorlagen verwendet

  • Was ist der Zweck von $ implizit in Winkeln 2 Vorlagen?
  • Was ist die Beziehung zwischen let- und $ implizit?

Antwort

9

können Sie lokale Variable definieren auf ng-template durch let-name

Wenn Winkel schafft Vorlage von createEmbeddedView Aufruf kann es auch Kontext übergeben, die im Inneren ng-template

verwendet werden Mit der Taste $implicit im Kontextobjekt wird Legen Sie den Wert als Standard fest. Also, wenn wir schreiben:

vcRef.createEmbeddedView(template, { $implicit: 'value' }) 

und wir haben template

<ng-template let-foo> 
{{ foo }} 
</ng-template> 

dann können wir darüber nachdenken, wie

<ng-template let-foo="$implicit"> 
    {{ foo }} 
</ng-template> 

so foo wird gleich value

Plunker Example

Auf der anderen Seite, wenn wir Kontext wie:

let-foo="bar" 
+0

Dank @yurzui:

{ bar: 'value' } 

wir Variable wie zu erklären haben. –

+0

Gibt es eine Möglichkeit, mehrere Variablen zu deklarieren und sie zu verwenden? –

+0

@MantuNigam https://plnkr.co/edit/RUu7hWAcMUZkjcFK1QKy?p=preview – yurzui