2017-10-07 3 views
0

J'ai un projet angulaire de test (appelons-le project1) où j'écris mes composants. Je dois utiliser le routage dans ce projet afin de naviguer d'un composant à l'autre (objectif de l'organisation et de l'esthétique).Comment supprimer le routage dans angular2 après avoir fait du dossier une dépendance à un autre projet?

J'ai un autre projet angulaire (appelons-le project2) qui a dans son node_modules le composant project-project1 (rendu disponible en le référençant par package.json) dans project2.

Problème

Quand je dois chercher les composants de project1-Projet2 (simple routage forRoot angulaire Projet2), un problème apparaît avec un conflit forRoot qui est maintenant dans mon project1 et project2.

Le problème disparaît une fois que j'ai supprimé le routage de project1 dans les node_modules de project2 mais que cela prend du temps.

Existe-t-il un moyen de résoudre ce problème, autre que de supprimer manuellement les routes dans ma dépendance (projet1) ou le code de commentaire juste pour que project2 fonctionne?

+0

Dans la copie de votre projet 1 dans le node_module, pouvez-vous remplacer forRoot par forChild dedans? – Wandrille

+0

Et où appelez-vous votre projet_1, dans votre itinéraire avec chargement paresseux? Pouvez-vous nous donner un code de comment vous l'utilisez dans le projet 2 – Wandrille

+0

Je ne peux pas appeler forChild de toute façon parce que je cours ce projet de 2 façons, séparément et ensemble. J'ai juste besoin de forRoot, pas d'enfant. Project1 est dans les modules de noeud de project2 après l'installation de npm –

Répondre

1

Solution 1

Ajouter une instruction conditionnelle pour la méthode forRoot() à l'intérieur du project1. Donc, chaque fois que vous construisez comme une application autonome il fera forRoot() et quand construit comme une dépendance de NPM - forChild().

// this is how you're getting the environment 
import { environment } from './environment'; 

Solution 2

Ajouter chargement paresseux à l'intérieur project1 de sorte que les cli ne regrouper tous les modules comme l'un, mais séparé. Après que l'importation ou paresseux charge Projet1 modules (et non la racine , il a encore la forRoot()) à l'intérieur projet2, ce faisant référence à partir des node_modules.

Beware of this issue if doing lazy-loading from node_modules.

Si vous avez besoin de plus d'aide, s'il vous plaît ajouter un code.

+0

Je vais y jeter un coup d'oeil, tnx. –