做者:Dr. Axel Rauschmayer翻译:疯狂的技术宅javascript
原文:https://2ality.com/2020/04/mi...html
未经容许严禁转载前端
本文概述了将代码库从 JavaScript 迁移到 TypeScript 的策略。还提到了须要进一步阅读的材料。java
这是用于迁移到TypeScript的三种策略:程序员
更多信息:面试
若是咱们用编译器选项 --allowJs
,则 TypeScript 编译器支持 JavaScript 和 TypeScript 文件的混合:typescript
首先,只有 JavaScript 文件。而后咱们一个接一个地将文件切换到 TypeScript。在这样作的同时,咱们的代码库也在不断的被编译。json
这是 tsconfig.json
的样子:segmentfault
{ "compilerOptions": { ··· "allowJs": true } }
更多信息:服务器
这个方法的工做方式以下:
--noEmit
)实用。.js
文件切换到 .ts
文件,由于整个代码库已经彻底有了静态类型。如今咱们甚至能够生成类型文件(文件扩展名为 .d.ts
)。如下是经过 JSDoc 注释为普通 JavaScript 指定静态类型的方式:
/** * @param {number} x - A number param. * @param {number} y - A number param. * @returns {number} This is the result */ function add(x, y) { return x + y; } /** @typedef {{ prop1: string, prop2: string, prop3?: number }} SpecialType */ /** @typedef {(data: string, index?: number) => boolean} Predicate */
更多信息:
在大型 JavaScript 项目中,不管咱们选择哪一种方法,切换到 TypeScript 均可能会产生大量错误。能够选择快照测试 TypeScript 错误:
更多信息:
咱们快速学习了各类迁移到 TypeScript 的策略。另外还有两个提示:
而后为下一步制定清晰的计划。须要与你的团队交流优先顺序:
当你把代码库从 JavaScript 迁移到 TypeScript 时都经历些什么?请在评论中告诉你们!