Element UI 打包探索【2】

目录

第三个命令

第四个命令

第五个命令

第六个命令

第七个命令

cross-env

BABEL_ENV

babel

第八个命令

总结


书📚接上文Element UI 打包探索【1】我们继续来看

第三个命令

bash 复制代码
"lint": "eslint src/**/* test/**/* packages/**/* build/**/* --quiet"

这个命令相信大家都不陌生,但是前提项目中存在eslint(代码格式化工具)

tip:--代表的是命令中的参数,像这边--quiet就是减少输出信息

***结论:***格式化src文件夹下的文件夹下的所有文件 - - 后面以此类推

***why:***格式化操作,也没什么值得为什么的,大家可以借鉴使用

第四个命令

bash 复制代码
webpack --config build/webpack.conf.js

这条是有关于webpack的打包结果,具体我想出一期专门的专栏用来讲解,到时候补充到这篇文章中.......#warning TODO

***结论:***打包

***why:***用于打包

第五个命令

bash 复制代码
webpack --config build/webpack.common.js

webpack的common文件操作,也是到时候一并专栏讲解

***结论:***打包

***why:***用于打包

第六个命令

bash 复制代码
webpack --config build/webpack.component.js

webpack的component文件操作,也是到时候一并专栏讲解,连续三条脚本都指向webpack!!!

***结论:***打包

***why:***用于打包

第七个命令

bash 复制代码
cross-env BABEL_ENV=utils babel src --out-dir lib --ignore src/index.js
cross-env

cross-env 是一个 Node.js 包,用于在不同操作系统上设置环境变量,特别是在运行 JavaScript 脚本时。不同操作系统使用不同的命令来设置环境变量,这可能导致开发人员需要编写不同的脚本来适应不同的平台。cross-env 的目的是解决这个问题,使设置环境变量变得更加便捷和可移植。

BABEL_ENV

BABEL_ENV=utils:将环境变量BABEL_ENV设置为utils。

babel

编译生成文件

***结论:***设置环境变量process.env.BABEL_ENV=utils并且用babel命令去编译整个src文件夹,并且将结果输出到lib文件夹下(lib不会去覆盖原先的lib,编译时忽略src/index.js文件)。

***why:***先讲完我们再回头来看

第八个命令

bash 复制代码
node build/bin/build-locale.js

也是和国际化相关的东西

输入文件:src/locale/lang - - 各个语言下的js

输出文件:lib/umd/locale - - 各个语言下通过babel的产物

重点函数

javascript 复制代码
var transform = function(filename, name, cb) {
  require('babel-core').transformFile(resolve(localePath, filename), {
    plugins: [
      'add-module-exports',
      ['transform-es2015-modules-umd', {loose: true}]
    ],
    moduleId: name
  }, cb);
};

生成的产物部分截图

***结论:***国际化文件babel化

***why:***所有的组件做好国际化的通道


由于篇幅较长,下篇文章咱们继续探讨!!

总结

本篇文章讲了6个命令还有1个why的事情没讲,下篇我们继续。

🔽直接看这里

如果觉得有收获,麻烦给个赞和关注。你的鼓励是我写作的动力,大家一起学习一起进步。

相关推荐
anOnion8 小时前
构建无障碍组件之Menu Button pattern
前端·html·交互设计
用户47949283569158 小时前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端
JieE2129 小时前
LeetCode 101. 对称二叉树|JS 递归 + 迭代双解法,彻底搞懂镜像判断
javascript·算法
冬奇Lab11 小时前
AI Workflow 定义的四次演进:从 Markdown 到 JS 脚本,再到分布式多 Agent
javascript·人工智能·agent
zhangxingchao11 小时前
Kotlin常用的Flow 操作符整理
前端
IT_陈寒12 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
Pedantic14 小时前
SwiftUI 手势笔记
前端·后端
橙子家14 小时前
浏览器缓存之【结构化数据库与缓存】: IndexedDB、Cache storage 和 Storage buckets
前端
user205855615181314 小时前
X6 中边悬浮置顶,规避 `mouseleave` 事件丢失问题
前端
李明卫杭州14 小时前
CSS aspect-ratio 属性完全指南
前端