V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fancy2020
V2EX  ›  React

React 中写 propTypes 真的有用吗?

  •  
  •   fancy2020 ·
    fanchangyong · 2020-04-23 10:05:23 +08:00 · 3174 次点击
    这是一个创建于 1680 天前的主题,其中的信息可能已经有所发展或是发生改变。
    15 条回复    2020-04-23 13:32:47 +08:00
    xstmjh
        1
    xstmjh  
       2020-04-23 10:09:12 +08:00
    static typing 真的有用吗
    fxy739371
        2
    fxy739371  
       2020-04-23 10:11:43 +08:00
    对于用了 ts 的来说,基本没用吧
    l1nyanm1ng
        3
    l1nyanm1ng  
       2020-04-23 10:11:58 +08:00
    还是有些用的,控制台 warning 会提示你,要想一不做二不休直接 typescript 限定 props 类型,不符合预期他就给你编译期罢工更带劲
    dr2009
        4
    dr2009  
       2020-04-23 10:17:21 +08:00
    用 propTypes 不如直接上 ts
    IsaacYoung
        5
    IsaacYoung  
       2020-04-23 10:17:22 +08:00 via iPhone
    上 ts
    dayeye2006199
        6
    dayeye2006199  
       2020-04-23 11:01:32 +08:00
    LZ 可能没碰到过在别人的 codebase 上开发。
    otakustay
        7
    otakustay  
       2020-04-23 11:42:59 +08:00
    前面说上 TS 的那些……你写个组件发出去能确保使用者都是 TS 吗
    zqx
        8
    zqx  
       2020-04-23 11:53:59 +08:00 via Android
    接楼上,只要使用方在 vs code 环境开发,那 ts 组件的静态类型就能自动提示和补全,总比没有强
    Perry
        9
    Perry  
       2020-04-23 11:56:01 +08:00
    @otakustay 现在 IDE 都支持 typescript type information (d.ts) 了为啥要确保?
    CodingNaux
        10
    CodingNaux  
       2020-04-23 11:56:16 +08:00
    js 的话从来没有好好写。直接 function 组件首行列出所有 props
    ```js
    const { a, b, c } = props;
    ```

    ts,没办法不写。。。
    Perry
        11
    Perry  
       2020-04-23 11:58:39 +08:00
    说真的这类问题不想再回答了
    一般发帖的人就是想吐槽找同类找存在感
    随手谷歌下 Why React PropTypes are important 都比发这帖强,不想用懒得用就别用了
    otakustay
        12
    otakustay  
       2020-04-23 12:02:54 +08:00
    @Perry 因为 IDE 的辅助支持是没办法确保类型正确的,天下不合格的程序员千千万万,没有一个 warning 连后人发现问题帮着修的机会都会消失
    我更倾向于有工具在编译的时候通过 ts 自动生成 propTypes
    Perry
        13
    Perry  
       2020-04-23 12:13:11 +08:00
    @otakustay  在 build pipeline 中也可以加检测确保类型正确
    otakustay
        14
    otakustay  
       2020-04-23 13:27:34 +08:00
    @Perry 如果写的是 JS (用带 d.ts 的库),现在有什么工具能方便地加这个类型检测吗,我这边也遇到类似的问题想找个工具给 JS 做检测
    duan602728596
        15
    duan602728596  
       2020-04-23 13:32:47 +08:00 via iPhone
    对于有些控制台一堆提示类型不正确、循环不写 key 值,放着一堆警告都不管的人来说,确实没啥用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5295 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 01:23 · PVG 09:23 · LAX 17:23 · JFK 20:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.