SystemJS 및 ES 가져 오기 구문을 사용할 때 Angular2 구성 요소를 가져 오는 데 문제가 있습니다.SystemJS 및 ES 모듈 가져 오기의 상대 경로
프로젝트 구조 : ROOT/src/client/app/frameworks/il8n/language-service.ts
및 다른 파일 : ROOT/src/client/app/main/pages/login/login.ts
ROOT
|_src
|_client
|_app
|_frameworks
|_il8n
|_analytics
|_main
|_components
|_pages
|_utility
이이 전 파일이 있다고 가정 해 봅시다. 내가 language.ts을 가져올 login.ts, 그래서 작업을 수행하는 하나의 방법과 같이이다 :
//login.ts import { LanguageService } from '../../../../frameworks/il8n/language-service';
배럴을 사용하여, 같은이며, 그렇게하는 또 다른 방법 :
//login.ts import { LanguageService } from '../../../../frameworks/index';
frameworks/index.ts
이
export * from './il8n/language-service';
을하고있다
나는 ../../../
등 뭔가를 가져와야 할 때마다 싶지 않아; 난 그냥 할 수 있다면 좋을 것이다 import { LanguageService } from 'frameworks';
지금까지, 나는 SystemJS의 "map" option과 같이 사용하여 작업 내 빌드 프로세스를 얻을 수있었습니다 그러나
map: {
frameworks: 'src/client/app/frameworks/index',
components: 'src/client/app/main/components/index',
pages: 'src/client/app/main/pages/index'
}
, 내 IDE가 불평 (모든 인텔리을
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"declaration": false,
"removeComments": true,
"noLib": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"pretty": true,
"allowUnreachableCode": false,
"allowUnusedLabels": false,
"noImplicitAny": true,
"noImplicitReturns": true,
"noImplicitUseStrict": false,
"noFallthroughCasesInSwitch": true,
"baseUrl": "./src",
"paths": {
"frameworks": ["client/app/frameworks"],
"components": ["client/app/main/components"],
"pages": ["client/app/main/pages"],
"utility": ["client/app/main/utility"]
}
},
"compileOnSave": false
}
: 여기
`import { LanguageService } from 'frameworks';`
내 tsconfig.json 파일입니다 기능이 완전히 언제 내가 그런 짓을) 고장
"간단한"가져 오기를 수행 할 수 있도록 내 IDE와 SystemJS 빌드 구성을 모두 만족시키는 방법이 있습니까?
어떤 IDE 버전을 사용하십니까? – anstarovoyt
WebStorm 2016.2를 사용합니다. – exk0730
프로젝트를 공유해주세요. 이 기능은 WS2016에서 작동해야합니다.2 – anstarovoyt