waiaan
V2EX  ›  React

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

  •  
  •   waiaan · Jun 24, 2020 · 6802 views
    This topic created in 2323 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
    bnm965321
    Jun 24, 2020❤️16
    1
    because fucking IE
    cheeto
    cheeto
    Jun 24, 2020
    2
    https://www.caniuse.com/#search=ECMAScript%205

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

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

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

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

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