javascript - 使用我的库对应的 .d.ts 代码检查我的库 .js 代码
问题描述
我正在开发一个用 JavaScript 编写的名为MyLibrary
. 我还在编写(并发布)相应的类型声明文件,以便 TypeScript 用户可以在他们的 TypeScript 项目中使用我的库。这是我的项目结构:
// myLibrary.js
function abc (x, y, z) {
let a = 1
return a + x + y + z
}
function f (a, b, c) {
const v = abc(a, b, c)
return v*v
}
module.exports = {
abc,
f
}
// myLibrary.d.ts
export as namespace MyLibrary
export = MyLibrary
declare namespace MyLibrary {
export function abc (x: number, y: number, z: number): number
}
这是非常标准的并且按预期工作。现在我想改善 MyLibrary 的开发者体验。我希望在修改.js
文件时能够在我的文本编辑器中看到相应的类型声明。下面是 VSCode 的屏幕截图,我的光标悬停在abc
函数内部myLibrary.js
:
注意编辑器如何显示函数的any
类型abc
?
我如何让它显示定义文件中声明的类型?
这是 VSCode 的配置tsconfig.json
,还是其他的配置?这甚至可能吗?
请记住,将我的应用程序重写为 aMyLibrary.ts
不是一种选择。我没有使用 TypeScript 来生成任何东西。支持 TypeScript 开发社区是我项目的一部分。
解决方案
推荐阅读
- c++ - 类模板的条件无效成员函数(隐式实例化有效;显式实例化失败)
- amazon-web-services - 如何在更新 AWS Dynamo DB 条目时收到通知?
- regex - 组的可选令牌似乎阻止捕获?
- python - 如何在 patsy 中按组贬低变量?
- javascript - 对象不完全透明
- javascript - 使用 ES6 导入节点模块时找不到模块的声明文件
- c# - ASP.NET Core 2.2 - [assembly: ApiConventionType(typeof(DefaultApiConventions))] 不会使警告消失
- mysql - 环回自动更新不创建自定义模型
- rtf - 如何使用 QuillJS 将数据库中保存为富文本的数据呈现到网页
- c# - 使用相同的 Ordernumber 更新多行