Ela*_*iki 6 refactoring typescript visual-studio-code angular
我有一个返回一个非常长的无类型对象的函数,我想复制该对象的推断类型,因为手动操作太长了,然后我想创建它的类/接口,例如:
export class PatientTables {
emsf: string;
cadNumber: string;
// and so on
}
Run Code Online (Sandbox Code Playgroud)
有没有办法从某个地方复制它,因为 Visual Studio Code 似乎已经将它分类在某个地方,正如您在图片中看到的(还有 48 个),我怎样才能让它显示其余部分并复制它?谢谢!
右键单击函数名称,选择“重构”,然后选择“推断函数返回类型”。
一种方法是使用tsc命令行工具。如果您可以隔离文件以便不存在依赖项,那么您可以运行:
tsc filename.ts --declaration --emitDeclarationOnly
Run Code Online (Sandbox Code Playgroud)
生成的filename.d.ts文件将包含生成的类型。
这是一个已知的 VSCode 问题,这里有一个解决方法: https: //github.com/microsoft/TypeScript/issues/35601#issuecomment-921752554。所有积分均归 github 用户所有LoveriusB,但为了持久性,我将在此处发布他们的解决方案:
从安装 VSCode 的目录中,打开文件 /resources/app/extensions/node_modules/typescript/lib/tsserver.js 并更改ts.defaultMaximumTruncationLength = 160为更高版本,例如ts.defaultMaximumTruncationLength = 800.
按 F1 并选择 ,在 VSCode 中重新启动 TS 服务器TypeScript: Restart TS Server。
主要缺点是每次 VSCode 更新后都必须重复此操作。patch-package根据这篇文章(https://github.com/microsoft/TypeScript/issues/35601#issuecomment-1190985832 ) ,这也可以自动化,但我自己还没有尝试过。
| 归档时间: |
|
| 查看次数: |
751 次 |
| 最近记录: |