2016-03-18 24 views
6

Beh ... in 1.x.y angolare èTemplateURL con una funzione in angular2

angular.module('myApp', []).directive('myDirective', function(){ 
    return { 
     templateUrl : function(tElement, iAttrs){ 
      return 'http://' + iAttrs.myDirective // More... 
     } 
    } 
}); 

Ma .. In Angular2

@Component({ 
    selector: 'my-Directive', 
    templateUrl: 'http://???' 
}) 
class HelloWorld { 
} 

Ebbene, nel doc dicono solo String. Poiché viene gestito per essere una funzione in angular2?

+0

Usa TemplateURL: 'http: // ...' – pixelbits

+0

Il suo tipo di domanda simile a [questa domanda] (http://stackoverflow.com/questions/36071097/how-can -i-have-dynamic-templateurl-for-angular2-component) senza risposta ... –

+0

@pixelbits OP voleva avere, dynamic 'templateUrl' basato sul valore passato dal componente principale .. la domanda simile che ho chiesto ieri ma non ha trovo una risposta ... potresti guardare anche il mio commento precedente? –

risposta

0

Ho dovuto implementare qualcosa di simile e la mia soluzione era la stessa del commento di Thomas Gassmann sopra, così ho deciso di condividere.

Attualmente (angolare 4.4.5) @Component decorator accetta solo una stringa, pertanto il modello non viene compilato dinamicamente come su angularJS. Tuttavia è possibile implementare più componenti e commutare dinamicamente il componente. Esempio di seguito:

https://stackblitz.com/edit/angular-dynamic-templateurl

+0

L'idea è che i termini nel server dicono 'errors/timeout.html',' errors/input_error.html' .... Etc –

Problemi correlati