2016-09-05 25 views
7

Şablonları dinamik olarak angular2'ye yüklemek için bir yol var mı? Angular1'de ana denetleyici görünümünde farklı html şablonunu yüklemek için ng-include kullanılır. Angular2'nin sadece 1 templateUrl alabildiğini venumaralı google'ı angular2'de düzenleyebileceğini ve herhangi bir referans bulamadığını biliyorum.Angular2 dinamik şablonu veya ng-dahil

+1

['ngTemplateOutlet'] (https://angular.io/docs/ts/latest/api/common/index/NgTemplateOutlet-directive.html) var, ancak tam olarak aradığınız gibi görünmüyor . Başka bir yol, çalışma zamanında bileşenleri derlemektir. –

+0

Bu çözümü deneyebilirsiniz: http://stackoverflow.com/questions/33749994/dynamic-template-in-templaturl-in-angular2?answertab=votes#tab-top –

cevap

1

ihtiyacınız var Neden hazırlamak varken ng-dahil Özel bir yeni bileşen olarak html ve ihtiyaç duyduğunuz her yerde kullanın, seçici etiketi sayesinde.

Örn: Yani burada

@Component({ 
     selector: 'app-my-component', 
     templateUrl: './my-component.component.html' 
    }) 

, my-component.component.html dosya eklemek istediğiniz veya başka her yerde göstermek işaretlemeyi sahip olabilir. ve <app-my-component></app-my-component> seçme etiketi değeri, uygulama biçimlendirme html dosyalarınızda kullanılabilir (günlük html etiketleriniz olarak düşünebilirsiniz - ancak doğada oldukça özelleştirilebilir ve açısal çerçeve tarafından ilk özel etiketlerle yorumlanır ancak açısal kullanılarak oluşturulur).

+0

Denediğimiz bu şey, ancak etiketinin geldiği konsol hatası düzgün bitti değil. header.html ve sonlandırma etiketinde html başlangıç ​​etiketini footer.html –

+0

'a eklediğimizden, index.html dosyanızın yaklaşık <.... kendi altbilginiz>

+0

Bu fikir güzel. Üstbilgi ve altbilgi için iki ayrı bileşen yaparak denedim ve etiketini altbilgi HTML'sinden kaldırdım. Onun iyi çalışıyor ama IE tarayıcı için çalışmayabilir. –