Le routage entre les modules Angulaire 2
Je suis en train d'écrire une application où toutes les fonctionnalités obtenu son propre module (Une caractéristique pourrait être une page ou une partie d'une page). Ce que nous voulons que toutes les fonctionnalités d'avoir son propre nom de domaine logique, les services, les directives et les composants, c'est à dire dans le module tableau de bord, nous avons un ChartComponent widget que je ne veux pas l'exposer à d'autres points de vue comme login ou de profil.
Le problème, c'est lorsque l'on travaille avec de routage dans Angulaire 2 vous toujours les routes à un élément particulier, pas un module.
Dans notre cas, pour mettre en place un itinéraire pour path: '/tableau de bord " composant: DashboardComponent nous avons besoin de déclarer DashboardComponent dans l'app.le module.ts, et c'est très bien, mais puisque nous sommes encore dans le module d'application.module de notre CharComponent n'est pas exposée et ne sera pas rendu dans notre DashboardComponent depuis elle est déclarée dans le tableau de bord.le module.ts et pas d'application.le module.ts.
Si nous déclarons ChartComponent dans l'app.le module.ts qu'il fonctionne comme il se doit, mais nous avons perdu l'architecture de notre application.
La structure du fichier de l'application est quelque chose comme ceci:
└─ src/
└─ app/
├─ app.module.ts
├─ app.component.ts
├─ app.routing.ts
├─ profile/
| ├─ profile.module.ts
| └─ profile.component.ts
├─ login/
| ├─ login.module.ts
| └─ login.component.ts
└─ dashboard/
├─ dashboard.module.ts
└─ dashboard.component.ts
└─ chart/
└─ chart.component.ts
Vous devez vous connecter pour publier un commentaire.
Il n'est pas nécessaire d'importer les éléments en main(app) module,
Si vous chargez des routes paresseusement il suffit juste de définir le chemin comme ci-dessous,
OU
Vous pouvez simplement importer les
DashboardModule
dans le module principal et il va fonctionner que si les routes ne sont pas paresseusement chargé.Espérons que cette aide!!
Il s'avère que le chargement paresseux ne fonctionne pas correctement dans RC5, juste mis à niveau vers RC6 et tout a bien fonctionné.
Bien que cette logique est gentil, j'en ai mis tous les droits dans un accountmanagement composant de module pour l'avenir de la tique sur et en dehors sur les fonctionnalités, alors vous ne voulez pas que les utilisateurs ont tous les droits que vous pourriez voulez mettre à niveau un compte d'utilisateur dans le futur. Évolutivité et de prévoir d'économiser du temps de l'avenir de codage si votre système est en effet curieux sur cette logique.