Gahing's blog Gahing's blog
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Gahing / francecil

To be best
首页
知识体系
  • 前端基础
  • 应用框架
  • 工程能力
  • 应用基础
  • 专业领域
  • 业务场景
  • 前端晋升 (opens new window)
  • Git
  • 网络基础
  • 算法
  • 数据结构
  • 编程范式
  • 编解码
  • Linux
  • AIGC
  • 其他领域

    • 客户端
    • 服务端
    • 产品设计
软素质
  • 面试经验
  • 人生总结
  • 个人简历
  • 知识卡片
  • 灵感记录
  • 实用技巧
  • 知识科普
  • 友情链接
  • 美食推荐 (opens new window)
  • 收藏夹

    • 优质前端信息源 (opens new window)
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前端基础

  • 应用框架

  • 工程能力

    • 工程效率

    • 编译构建

      • AST解析
      • Bun使用总结
      • ESBuild使用总结
      • Rollup使用总结
      • SWC使用总结
      • Vite使用总结
      • 前端热更新原理剖析
      • babel

      • webpack

        • Webpack之TreeShaking
        • Webpack之libraryExport
        • sideEffect和treeShake
          • sideEffect
        • 关于模块联邦的理解
        • 常用插件
        • 笔记
    • 工程管理

    • JS 模块化

    • CSS 模块化

    • 工程质量

    • 前端测试

    • CI&CD

  • 应用基础

  • 专业领域

  • 业务场景

  • 大前端
  • 工程能力
  • 编译构建
  • webpack
gahing
2023-04-05
目录

sideEffect和treeShake草稿

纯粹的 esm 可以很方便的进行 tree-shake ,去除无用代码。

但实际应用时,很难分析一个模块是否完全没有副作用(现在可以自动分析一部分了么?)。因此需要借助 sideEffects 配置来显式声明是否存在副作用

# sideEffect

设置为 false ,表示都没有副作用,可以安全地删除没有用到的 export

如果部分文件存在副作用,可以自行配置文件列表

"sideEffects": ["./src/some-side-effectful-file.js", "*.css"]
1

也可以自行会文件进行标记,声明一个模块或方法没有副作用。

这样打包时没有用到的话会自动去除?

/*#__PURE__*/
1

https://webpack.docschina.org/guides/tree-shaking/

编辑 (opens new window)
上次更新: 2024/09/01, 23:56:56
Webpack之libraryExport
关于模块联邦的理解

← Webpack之libraryExport 关于模块联邦的理解→

最近更新
01
浅谈代码质量与量化指标
08-27
02
快速理解 JS 装饰器
08-26
03
Vue 项目中的 data-v-xxx 是怎么生成的
09-19
更多文章>
Theme by Vdoing | Copyright © 2016-2024 Gahing | 闽ICP备19024221号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式