模块导入的Typescript编译

Typescript compilation for module imports

本文关键字:编译 Typescript 导入 模块      更新时间:2023-09-26

我正在使用一个npm模块(节点rsa),试图使用typescript。在我的模块的例子中,我需要写一些像这样的js(取自模块文档)。

var NodeRSA = require('node-rsa');
var key = new NodeRSA({b: 512});

然而,当我在TypeScript:中键入此内容时

import {NodeRSA} from 'node-rsa';
var key = new NodeRSA({b: 512});

它编译为:

var node_rsa_1 = require('node-rsa');
var key = new node_rsa_1.NodeRSA({ b: 512 });

引发错误:

"node_rsa_1.NodeRSA不是函数"

我不得不写我自己的.d.ts文件,因为DT上什么都没有,所以我不确定这是否有什么不同?

我在我的项目中尝试了这个,它成功了:

import * as NodeRSA from 'node-rsa';

我认为这是因为节点rsa有一个默认导出。