TypeScript■先别用 TypeScript了!( 二 )
本文插图
给予错误的安全感
虽然这可能不是最好的方法 , 但是假设你定义了一个redux操作 , 如下所示: exportconst MY_BASIC_ACTION: ‘MY_BASIC_ACTION’ = ‘MY_BASIC_ACTION’
其中一些操作很简单 , 但是当你面临30种操作类型 , 在以旧操作作为模板复制新操作时 , 很容易发生以下情况: exportconst MY_NEW_ACTION: ‘MY_BASIC_ACTION’ = ‘MY_BASIC_ACTION’
看出问题了吗?我们只是以第一种操作的类型定义了一个新操作 。
这很难查询 , 因为你本应发送MY_NEW_ACTION , 但实际上发送了MY_BASIC_ACTION 。
在使用Flow / TypeScript时 , 你会感到非常安心 , 毫无防备 。 而等到你意识时问题已经变得非常棘手了 , 你可能会恨不得把头撞在墙上几个小时!
本文插图
图源:unsplash
本文插图
类型管理本身就是一种技能
JavaScript已经很容易理解 , 但将类型添加到这种动态、不存在隐患的语言中时 , 只有具备高超的技能 , 才能正确而高效地编写类型 。
避免类型化JS并不能作为逃避困难的理由 , 但是对于期限紧迫的现实项目或大部分初级开发人员来说 , 可能不得不这么做 。
在大多数情况下 , 你可能只需要给组件的属性、状态等分类 。 但是这个问题 , 总有一天你得面对 。
本文插图
强大的IDE可能就是你所需要的
VSCode中的IntelliSense与整理工具相结合 , 开发人员可能会从TypeScript和Flow中获得更多便利 。
IDE的支持会让你获颇丰 。 我敢打赌 , 你会惊讶于对TypeScript的疏忽之处如此之少 。
本文插图
图源:creative-tim
没有类型安全的编码提供了JavaScript的全部功能——毕竟 , 它是基于设计的松散类型化编码——并使你对此格外小心 。
本文插图
更多要管理的配置
建立类型化的操作系统并不简单 , 需要使用构建工具 , 管理配置文件 , 并创建更多依赖项等 。 你需要在曾经易于集成的库中寻找一个单独的部分 , 用以与TypeScript搭配使用 。
而最痛苦的是 , 你可能会花费大量时间在GitHub中搜索解决方案 , 以使LibraryZ与Flow或TypeScript一起使用 。
本文插图
图源:unsplash
真正的成就是 , 没有类型但仍然可以浏览和自记录的项目 。 或许你会觉得我讨厌TypeScript , 但恰恰相反 , 我非常喜欢TypeScript , 我对它的好处深有体会 。
但是 , 工欲善其事必先利其器 , 理性探讨它的缺陷也是必要的 , 不是吗?
本文插图
留言点赞关注
我们一起分享AI学习与发展的干货
【TypeScript■先别用 TypeScript了!】如转载 , 请后台留言 , 遵守转载规范
推荐阅读
- zol中关村在线|追剧别用液晶 智能投影让孩子眼睛更舒适
- 不正经d玩家|2020 开发者调查:TypeScript 最受欢迎击败 Python,Scala 最赚
- 【】微信、支付宝绑定银行卡,尽量别用这2个功能,希望大家知道
- 趣味科技秀微信、支付宝绑定银行卡,尽量别用这2个功能,希望大家知道
- 「」丰巢:不想用 可以别用
- :使用微信支付宝,尽可能别用这两个“功能”,时刻保护资金安全
