2017-10-07 9 views
0

필자는 구성 요소를 작성하고있는 테스트 용 앵글 프로젝트 (프로젝트 1)를 사용하고 있습니다. 구성 요소에서 구성 요소 (조직 및 미학의 목적)로 이동하기 위해이 프로젝트에서 라우팅을 사용해야합니다.폴더를 다른 프로젝트에 대한 종속성으로 만든 후 angular2에서 라우팅을 제거하는 방법은 무엇입니까?

나는 다른 각도 프로젝트가 그 node_은 프로젝트 2에서 (package.json를 통해 참조하여 제공) 컴포넌트 프로젝트 프로젝트 1 모듈에 HAS (프로젝트 2를 호출 할 수 있습니다).

문제

내가 프로젝트 2 (프로젝트 2 간단한 각도 forRoot 라우팅)에 프로젝트 1에서 구성 요소를 가져올 수 있고, 문제가 내 프로젝트 1에 지금 forRoot 충돌 나타납니다project2.

project2에서 node_modules의 project1에서 라우팅을 제거하지만 시간이 많이 걸리면 문제가 사라집니다.

mannualy 내 종속성 (project1)의 경로를 삭제하거나 project2가 작동하도록 코드를 주석 처리하는 것 외에이 문제를 해결할 방법이 있습니까?

+0

In node_module에서 프로젝트 1의 복사본을 forRoot를 forChild로 바꿀 수 있습니까? – Wandrille

+0

그리고 게으른 로딩으로 경로에서 project_1을 (를) 어디에서 호출하고 있습니까? 프로젝트 2에서 어떻게 사용하는지에 대한 코드를 줄 수 있습니까? – Wandrille

+0

어쨌든 forChild를 호출 할 수 없습니다. 왜냐하면이 프로젝트를 두 가지 방법으로, 개별적으로 그리고 함께 실행하기 때문입니다. 나는 루트를 원해. 아이는 없어. Project1은 npm 설치 후 project2의 노드 모듈에 있습니다. –

답변

1

해결 방법 1

프로젝트 1 내부 forRoot() 메소드에 대한 조건문을 추가합니다. 그래서 매번 당신이 forRoot을 할 것 독립 응용 프로그램으로 구축하고()NPM 종속성으로 내장 된 경우 - forChild()를.

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

해결 방법 2

하지만 별도의 같은, 그래서 CLI가 하나로 모든 모듈이 포함되어 있지 않습니다 프로젝트 1 내부에 게으른 로딩을 추가합니다. 그 수입 또는 게으른 부하 프로젝트 1 모듈 후 node_modules에서 그것을 참조, 프로젝트 2 내부 (안 루트, 여전히 forRoot()있다). 당신이 더 많은 도움이 필요하면

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

, 일부 코드를 추가하십시오.

+0

나는 그것에 대해 살펴볼 것입니다, tnx. –