waiaan
V2EX  ›  React

react 不支持 ie8 的技术原因是什么?

  •  
  •   waiaan · Jun 24, 2020 · 6401 views
    This topic created in 2178 days ago, the information mentioned may be changed or developed.

    比如 vue2.0 是因为 ie8 以下不支持 defineProperty,react 的原因是什么?

    28 replies    2020-06-24 22:26:10 +08:00
    bnm965321
        1
    bnm965321  
       Jun 24, 2020   ❤️ 16
    because fucking IE
    cheeto
        2
    cheeto  
       Jun 24, 2020
    https://www.caniuse.com/#search=ECMAScript%205

    vue 不支持 ie8 的原因其实是因为 defineProperty 仅 ES5 支持,且无法 shim

    react 是可以支持 ie8 的,通过 https://github.com/es-shims/es5-shim
    murmur
        3
    murmur  
       Jun 24, 2020
    有非官方 react ie8 解决方案
    VDimos
        4
    VDimos  
       Jun 24, 2020 via Android
    不想支持呗,费时费力不说,还会拖累 react 和前端技术的发展,更何况后面 fiber 还用了 requestIdleCallback 这种 API
    Mutoo
        5
    Mutoo  
       Jun 24, 2020
    就算 react core 支持,而 react 社区的大部分前端组件不支持也没有意义呀。
    toma77
        6
    toma77  
       Jun 24, 2020
    History API?
    mtmzorro
        7
    mtmzorro  
       Jun 24, 2020   ❤️ 8
    本来想码字说明技术原因。

    想了想入行这么多年以来从 IE6 开始受过的苦,心里只剩下了和一楼一样的话:because fucking IE 。
    waiaan
        8
    waiaan  
    OP
       Jun 24, 2020
    @mtmzorro 就当让鄙人涨涨见识。
    realpg
        9
    realpg  
    PRO
       Jun 24, 2020   ❤️ 8
    跟滴滴打车不支持人力三轮车注册成车主差不多吧
    zhuweiyou
        10
    zhuweiyou  
       Jun 24, 2020
    别说 IE8 了,IE11 我都不管。
    hst001
        11
    hst001  
       Jun 24, 2020
    除了大公司因为用户群过于庞大,真的还有在乎 IE 的吗?
    murmur
        12
    murmur  
       Jun 24, 2020
    @hst001 大公司在乎 IE 就够了,小公司都不做桌面市场了
    love
        13
    love  
       Jun 24, 2020
    @murmur fb 之类也算大公司吧,基本没一个太乎 ie8
    IAPYANG
        14
    IAPYANG  
       Jun 24, 2020 via iPhone
    @love toB 的公司还是得在意,毕竟领导只用 ie8
    rioshikelong121
        15
    rioshikelong121  
       Jun 24, 2020
    不支持 ie8 需要理由么。
    icanfork
        16
    icanfork  
       Jun 24, 2020
    @IAPYANG #14 我也是 toB 行业,自从有了 360 浏览器之后,领导已经开始用 360 安全浏览器了
    loading
        17
    loading  
       Jun 24, 2020 via Android
    @belin520 360 确实拯救了很多人
    weixiangzhe
        18
    weixiangzhe  
       Jun 24, 2020
    用啥 ie,微软都不管的东西了,要安全推荐 360.jpg 🐶
    coolcoffee
        19
    coolcoffee  
       Jun 24, 2020
    react 刚开始是支持的,但是前端公共组件支持不友好。 早期 antd 我也是用过在 IE8 上面的,但是会有各种小毛病。
    aaronlam
        20
    aaronlam  
       Jun 24, 2020
    想问下那如果我引入了 polyfill 是不是也可以?
    其实有点改不清楚 polyfill 和 shim 的差别。

    谢谢!
    Torpedo
        21
    Torpedo  
       Jun 24, 2020
    react 不支持 ie8 考虑两部分:
    ie8 占有率很小了。目前我了解很多国内大公司的 c 端项目都不再维护 ie8 的代码了,国外更早 ie8 占有率就很低了。

    技术 上来说,react 那套自定义事件系统,处理 ie8 的兼容性问题比较麻烦
    erwin985211
        22
    erwin985211  
       Jun 24, 2020
    就算国内很多大厂也不支持 ie8 啦
    beyondex
        23
    beyondex  
       Jun 24, 2020 via Android
    政府的项目都不要求必须支持 IE 了,他们的装有谷歌浏览器。XP 虽然无法装最新版,但可以装 Chrome 49
    otakustay
        24
    otakustay  
       Jun 24, 2020
    react 理论上是支持的,但官方绝对不会声明支持,也不会针对 ie8 去测试兼容性,挂了就挂了,看天
    joesonw
        25
    joesonw  
       Jun 24, 2020
    @VDimos requestIdleCallback 这个本来就不是全平台, 他们自己也 shim 的, 用 requestAnimationFrame, 自己计时.
    MoRun
        26
    MoRun  
       Jun 24, 2020
    react 是首先为 Facebook 内部服务的,所以没考虑过支持 ie8
    shiny
        27
    shiny  
    PRO
       Jun 24, 2020
    现在连 PC 端都不那么重视了,何况一个 IE8 。想当年花费的不少青春学习的 IE6 兼容知识,现在都扫进了历史的垃圾堆。
    人生苦短,珍惜青春,面向未来开发。
    Biebe
        28
    Biebe  
       Jun 24, 2020 via iPhone
    可以,但没必要
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1033 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 86ms · UTC 18:52 · PVG 02:52 · LAX 11:52 · JFK 14:52
    ♥ Do have faith in what you're doing.