2017-03-16 5 views
0

SystemJS에서 잘 작동하는 코드가 있습니다. 이제 각도 2 프로젝트를 webpack으로 이동하고 System.import를 채 웁니다.angular 2 System.import issue

이상형? 고맙습니다!

private loadBundles(fullBundlesFilePath:any, callback?: any) { 
     System.import(fullBundlesFilePath).then((bundles:any) => { 
      bundles.forEach((bundleUrl:any) => this.loadBundle(bundleUrl, callback)); 
     }); 
    } 

로드 할 수하고자하는 파일의 내용은 그것은 웹팩에서 가져올 수있는 변수를 전달하는 것은 불가능

module.exports = function() { 
    return [ 
     '/explorerweb_bundles/login/manifest.js', 
     '/explorerweb_bundles/printers/manifest.js' 
    ]; 
}() ; 

답변

0

입니다. Webpack은 컴파일시 번들에 포함 할 모듈을 알아야하며 프로그램 흐름 분석을 수행하지 않으므로 포함 할 모듈을 알 수 없습니다. 또한 가져 오기는 배열을 사용하지 않고 단 하나의 모듈을 사용합니다. 그래서 당신과 같이 수동으로 수행해야합니다

System.import('/explorerweb_bundles/login/manifest.js').then(module => /*...*/); 
System.import('/explorerweb_bundles/printers/manifest.js').then(module => /*...*/); 

보조 노트 System.import is deprecatedimport()에 찬성.

+0

그래서 angular-cli 응용 프로그램의 System.import에 외부 URL을 전달하여 umd 라이브러리를로드 할 수 없습니까? 라이브러리를로드하는 유일한 방법은 systemjs로 독점적으로 만든 응용 프로그램을 사용하는 것입니다. @ michale-jungo – user3757628

+0

webpack과 systemjs를 통합 할 수 있습니까? – user3757628