11
votes

Composant angulaire2 déclaré dans plusieurs modules

Mon application Angular2 RC6 a deux modules et je ne sais pas comment déclarer un composant partagé.

J'ai un composant nommé SpinnerComponant utilisé tout au long de l'application. Je l'ai défini dans App.Modules.aS:

@NgModule({
    imports: [CommonModule],
    declarations: [
        SpinnerComponent
    ],
    providers: []
})


2 commentaires

Avez-vous essayé de mettre SpinnerComponce dans son propre module, puis importer ce module dans les deux autres modules?


Je suggérerais de créer un module partagé qui contiendra SpinnerComponce. Importer ce module dans les deux modules.


3 Réponses :


1
votes

Voir le code complet serait bénéfique mais de toute façon ...

Vous pouvez essayer de récupérer Spinner au module de réparation et de l'importer à partir de là dans le module d'applications. J'utilise séparé (dans votre cas, ce serait troisième) module "partagé" où la fonctionnalité commune siège à chaque autre module peut l'importer à partir de là.


2 commentaires

Comme il est utilisé partout où je pensais pouvoir le mettre dans l'application principale.Module. J'ai déjà eu un module partagé alors je viens de le mettre là-bas comme vous l'avez suggéré.


Oui, vous ne pouvez pas vraiment importer le module d'application racine, mais le module racine peut importer à partir d'autres modules.



1
votes

Vous pouvez également laisser SpinnerComponent dans ReapleReturnModule, car celui-ci est importé dans le module d'application principal, mais également l'ajouter dans le tableau "Exportations" du module. Après cela, supprimez-le des déclarations du module d'applications.

https: // angular.io/docs/ts/latest/cookbook/ngmodule-faq.html#!#Q-Quelt-a-export


0 commentaires

5
votes

Ajouter Exportations: [SpinnerComponent] à votre application.Modules Ngmodules Décorateur.

Référence: https://angular.io/docs/ts/latest/ guide / architecture.html ,

`` ` NGMODULE est une fonction de décorateur qui prend un seul objet de métadonnées dont les propriétés décrivent le module. Les propriétés les plus importantes sont:

...

exportations - le sous-ensemble des déclarations qui doivent être visibles et utilisables dans les modèles de composants d'autres modules.

...

`` `


0 commentaires