如何在TypeScript中导入Vanilla JS ES6模块?

时间:2020-02-15 20:31:34

标签: javascript typescript es6-modules

我正在尝试导入该库:spotlight,它是纯JS。

在我的项目中,我创建了一个伪造的 d.ts

declare module 'spotlight.js'
根据 VSCode 的建议

,然后我尝试了每种单独的导入组合:

import * as spotlight from 'spotlight';
import spotlight from 'spotlight';
import { spotlight } from 'spotlight';

但是在我的代码中,spotlight表达式始终是一个空对象。

我想念什么?

3 个答案:

答案 0 :(得分:3)

对此有一个未解决的问题:https://github.com/nextapps-de/spotlight/issues/6

答案 1 :(得分:2)

正如@Shinigami指出的-有一个未解决的问题。正如我所看到的,目前,没有{@ 1}}对象import的优雅方法,而无需对库进行修改(似乎Spotlight也无济于事)。但是,根据代码判断,npm run build可通过Spotlight访问。因此应该可以像这样使用它

window

答案 2 :(得分:0)

最初,declare语句必须位于单独的文件中,还要确保您为import语句提供了正确的路径。