在TypeScript中导出JavaScript函数的声明文件
我是TypeScript新手,我想知道如何为自定义JavaScript函数编写声明文件。我尝试了这个,但它给了我错误“找不到模块“./main.”的声明文件”,并且在index.ts文件中没有给出任何IntelliSense main.js在TypeScript中导出JavaScript函数的声明文件,javascript,typescript,Javascript,Typescript,我是TypeScript新手,我想知道如何为自定义JavaScript函数编写声明文件。我尝试了这个,但它给了我错误“找不到模块“./main.”的声明文件”,并且在index.ts文件中没有给出任何IntelliSense main.js var maths={ sum:function (a,b){ console.log(a+b)}} 模块导出=数学 索引 import * as mt from "./main" mt.sum(2,5); d.ts型 declare module '
var maths={ sum:function (a,b){ console.log(a+b)}}
模块导出=数学
索引
import * as mt from "./main"
mt.sum(2,5);
d.ts型
declare module 'main' {
export function sum(a:number,b:number):void }
`此导入
import * as mt from "./main"
正在与index.ts
在同一目录中查找main.ts
或main.d.ts
因此,您可以尝试将type.d.ts
重命名为main.d.ts
并从中删除declare module'main'
,只将export function sum
保留在顶层。以这种方式导入时,模块名取自文件名。此外,您可能必须从项目中删除对type.d.ts
的引用(或tsconfig.json
),如果您有引用的话
或者,您可以尝试将导入更改为
import * as mt from "main"
因此,导入的模块名称与
declare module
中给出的名称完全匹配。感谢您的回答,它是有效的。还需要询问的是同一文件夹中的d.ts文件和.js文件?对于从“/main”导入的main.js
文件,应位于编译index.js
的同一文件夹中。