Typescript声明文件不是模块

时间:2016-07-25 09:26:57

标签: javascript typescript

我尝试为示例JS库创建一个typescript声明文件

my_lib.js:

function f1(a, b) {
  return a + b;
} 
function f2(a, b) {
  return a - b;
}  
module.exports = {
  f1: f1,
  f2: f2 
}

my_lib.d.ts

declare module 'my_lib' {
    function f1(a: number, b: number): number;
    function f2(a: number, b: number): number;   
    export default {
        f1: f1,
        f2: f2 
    }
}

打字稿文件尝试使用带

的库
import my_lib from 'my_lib';

我有这个错误

  

错误TS2656:导出的外部包装类型文件   'C:/.../ my_lib.d.ts'   不是一个模块。请联系包裹作者更新   包装定义。

有什么想法吗?感谢

2 个答案:

答案 0 :(得分:0)

lib.d.ts 是TypeScript内部库的保留文件名。不要使用它。

答案 1 :(得分:0)

我使用export =import my_lib = require("my_lib");语法

解决了问题