开源项目从js到ts,我所遇到的一些问题

本文记录了作者在将一个JavaScript开源项目迁移到TypeScript过程中遇到的问题,包括js文件解析错误、无法使用import语法、装饰器支持、webpack别名失效、构建体积增大、karma启动报错以及export default异常。通过逐步解决问题,作者分享了改造经验与解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

早在两年前,就拉了个ts的分支,但稍作尝试后,就找了一堆借口放弃了。最近处于离职状态,时间充裕的我终于下定决心向ts走近一步。

准备工作

期间先是在网上找了一些ts相关的资料,把原先只限于demots技能稍作提升。过程中强迫自已先学习后动手,虽然学习过程中一行代码都不写的滋味并不好受,但总体下来却省下了很多时间。

无关框架

开源项目GridManager是一个原生js实现的跨框架(jquery、react、vue2.x、angular1.x)表格组件,所以在切换ts的过程中并不会牵扯到框架特性。

问题汇总及解决

js文件解析错误

对于一个已经存在的项目,很难做到一次性完整切换,所以需要支持解析原有的js文件。

{
    "compilerOptions": {
         // 允许编译javascript文件
        "allowJs": true
    }
}

无法使用object[key]方式

刚调整完配置后,满屏的报错中这一类是最多的。

// tsconfig.json
{
    "compilerOptions": {
        //
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值