2016-03-02 10 views
6

Voglio creare una direttiva di attributo in Angular 2. Deve avere un gestore di clic sul suo host. Il gestore di clic deve essere aggiunto prima che le altre direttive sull'elemento vengano valutate perché controlla l'accesso a determinate funzionalità. In Angular 1, è possibile farlo con l'opzione di priorità quando si crea una direttiva. Esiste una sorta di equivalente in Angular 2?Controllo dell'ordine di valutazione direttiva in Angular 2

Grazie, Chase

+1

Non ho visto una cosa del genere. Immagino che una richiesta di funzionalità sarebbe la cosa giusta. –

+1

Non sarebbe meglio, in questo caso, usare un 'Component' invece che ospita le altre direttive? – lexith

risposta

1

priority in angolare 2 non è supportato, e non c'è alcun piano per aggiungerlo.

direttive componenti non possono utilizzare i seguenti attributi:

priorità e terminale. Mentre i componenti Angular 1 possono utilizzarli, essi non vengono utilizzati in Angular 2 ed è preferibile non scrivere il codice che si basa su di essi .

Vedi https://angular.io/docs/ts/latest/guide/upgrade.html#!#using-component-directives

0

ho trovato che l'ordine delle direttive sono valutate nella angolare 2 può essere definito nel blocco dichiarazioni del decoratore ngModule. Così:

@NgModule({ 
    imports: [BrowserModule], 
    // SecondDirective will be evaluated before FirstDirective 
    declarations: [AppComponent, SecondDirective, FirstDirective], 
    bootstrap: [AppComponent] 
})