一个简单的路障。我需要在我的一些服务中使用Leaflet和Leaflet-Draw插件。
我不知道如何导入完整的模块(核心和插件)
// the core
import * as L from 'leaflet';
// extension
import 'leaflet-draw';
export class LeafletConsumerService {}我有一个我不太喜欢的解决方案。我通过在index.html中硬链接这些库来加载库,消费者只需要一个对类型文件的引用声明
/// <reference path="../typings/index.d.ts" />
export class LeafletConsumerService {}没有其他方法可以做到这一点吗?有没有一种方法可以导入一个只会对已经加载的模块产生副作用的文件?
发布于 2017-01-10 07:01:22
好的,这是一个又快又脏的解决方案。如果你从一个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';记得为你的扩展扩展类型信息(通过一个类型文件或者自己创建)
https://stackoverflow.com/questions/41162479
复制相似问题