• 请不要在回答技术问题时复制粘贴 AI 生成的内容
fushang318
V2EX  ›  程序员

react 项目编译慢的问题

  •  
  •   fushang318 · Jul 8, 2023 · 3158 views
    This topic created in 1223 days ago, the information mentioned may be changed or developed.

    https://github.com/Uniswap/interface 这种复杂度的前端项目,在 16 年 macbookpro ( i3 2.?G )上启动开发环境要 5 分钟以上,热更新要半分钟,但是 CPU 没有占满,闲置 30%以上 但是 M1 上启动和热更新只需要几秒钟 这是为啥

    15 replies  •  2023-07-10 16:19:29 +08:00
    placeholder
    placeholder
    Jul 8, 2023
    1
    因为 M1 性能更强了
    flyqie
    flyqie
    Jul 8, 2023
    2
    你说,有没有可能瓶颈不是在 CPU ,而是在硬盘?
    kljsandjb
    kljsandjb
    Jul 8, 2023 via iPhone
    3
    CPU 没有占满大概是在 IOwait
    learningman
    learningman
    Jul 8, 2023 via Android
    4
    换 yarn 的 pnp ,配个 swc
    IvanLi127
    IvanLi127
    Jul 8, 2023 via Android
    5
    cpu 30% 是按单核算的还是全部?单核没吃满非话就可能是 io 不成。
    jikeytang
    jikeytang
    Jul 8, 2023
    6
    用 vite 来开发,用 webpack 来打包,能够解决编译慢的问题。
    imqiyue
    imqiyue
    Jul 8, 2023
    7
    @jikeytang 为什么不直接用 vite 构建?而费劲巴拉的去用 webpack ?是 vite 有什么坑嘛?
    b0x
    b0x
    Jul 8, 2023
    8
    swc 提升很多,肉眼可见的那种
    leokun
    leokun
    Jul 9, 2023
    9
    @jikeytang 同问,为什么要搞的这么割裂,如果想要开发一个插件,还需要做两份
    moonrailgun
    moonrailgun
    PRO
    Jul 10, 2023
    10
    才 5 分钟。我以前开发过开发环境启动要一个小时的。

    另外我会告诉你我的项目编译一次 docker 镜像要一个小时么?
    https://github.com/msgbyte/tailchat/actions/workflows/docker-publish.yml
    moonrailgun
    moonrailgun
    PRO
    Jul 10, 2023
    11
    @moonrailgun 口胡。是启动开发环境要 10 分钟
    karott7
    karott7
    Jul 10, 2023
    12
    编译慢是 import 写法不对,当你 import 一个文件的时候,构建工具会解析这个文件以及这个文件中所有引用的文件,然后做 tree shaking ,这是造成编译慢点主要原因之一
    如果你用过 lodash 项目的话,一般都推荐你用 import debounce from 'lodash/debounce' 写法,而不推荐 import { debounce } from 'loadsh'
    karott7
    karott7
    Jul 10, 2023
    13
    @b0x 现在 vite 中的 esbuild 直接可以解析 jsx 文件,不用 swc 也已经很快了
    duan602728596
    duan602728596
    Jul 10, 2023
    14
    babel 的编译,webpack 的 loader 和 plugin ,typescript 的 type check ,还有机器的老化,都是可能的原因。
    sampeng
    sampeng
    Jul 10, 2023
    15
    因为你用 react
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2274 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 13:53 · PVG 21:53 · LAX 05:53 · JFK 08:53
    ♥ Do have faith in what you're doing.