TypeScript编译模块导入

3

我正在使用一个npm模块(node-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不是一个函数"

由于DT上没有相关内容,我需要自己编写.d.ts文件,不确定这是否会有任何影响?


1
你尝试过使用 import NodeRSA from 'node-rsa'; 吗? - Tamas Hegedus
1个回答

3
我在自己的项目中尝试了这个方法,它有效:
import * as NodeRSA from 'node-rsa';

我认为这是因为node-rsa有一个默认导出。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接