2017-03-16 99 views
1

我目前在网上看到的答案看似过时。使用类型定义在TypeScript中导入节点模块

我安装了node_modules/leaflet-drawnode_modules/@types/leaflet-draw

这条线的工作原理:

import * as L from 'leaflet';

然而,这行不:

import * as foo from 'leaflet-draw';

我收到此错误:

/node_modules/@types/leaflet-draw/index.d.ts' is not a module.

要添加的混乱,这条线的工作原理:

var leafletDraw = require('leaflet-draw');

谁能帮我理解这一点?

回答

1

纵观源@types/leaflet-draw@types/leaflet,看来@类型/传单是实际模块声明出现:

declare module 'leaflet' { 
    export = L; 
} 

而在@类型/瓣叶战平,命名空间L只是延长(因此将其所有成员添加到原始leaflet模块中)。

+0

这种情况下适当的进口声明是什么? –

+0

我会用'import *'作为'from'传单';'从TypeScript的角度来看。假设传单和宣传单设置正确,“L”应具有宣传单的所有属性(以及传单的属性)。 – y2bd

相关问题