2016-12-15 1 views
2

간단한 도로 블록입니다. 일부 서비스에서는 전단지 및 전단지를 사용해야합니다.동일한 네임 스페이스에서 다른 모듈을 확장하는 모듈을 가져 오는 방법

나는 완전한 모듈 (코어 및 플러그인)

// the core 
import * as L from 'leaflet'; 
// extension 
import 'leaflet-draw'; 

export class LeafletConsumerService {} 

내가 많이 좋아하지 않는 솔루션을 가져 오는 방법을 모른다. 나는 index.html에 하드 연결을하여 라이브러리를로드하고 소비자는 단순히 typings 파일

/// <reference path="../typings/index.d.ts" /> 

export class LeafletConsumerService {} 

나는이 작업을 수행 할 수있는 다른 방법이 없다

에 대한 참조 선언이있다? 이미로드 된 모듈에 부작용을 야기하는 하나의 파일을 가져 오는 방법이 있습니까?

답변

1

좋아, 빠르고 더러운 솔루션. 이 대답은 quickstart repo에서 프로젝트를 시작하면 효과적입니다. 같은 고토 system.config.extras.js 및 확장 구성은 :

System.config({ 
    map: { 
     'leaflet': 'npm:leaflet/dist/leaflet.js' 
    }, 
    packages: { 
     leaflet: { 
      defaultExtension: 'js' 
     }, 
    } 
}); 

이 설명 된 바와 같이 우리는 이제

import * as L from 'leaflet'; 

으로 전단지를 가져오고 우리의 대응 확장 파일을 추가 할 수 있음을 의미

import 'your-leaflet-extension'; 

확장 기능에 대한 유형 정보를 입력 파일을 통해 확장하거나 직접 입력하십시오.

관련 문제