element版本:2.13.2
Vue版本:”^2.5.17”
先来看整体的目录结构
1 | |-- Element |
工程化架构
ele的工程化是如何做的呢?
我们先来看package.json的命令有哪些
1 | "scripts": { |
关于 & 与 && 区别
说明:&和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假;
但是&&当第一个条件不成之后,后面的条件都不执行了,而&则还是继续执行,直到整个条件语句执行完为止
npm run bootstrap
下载依赖
npm run build:file
生成目标文件
1 | node build/bin/iconInit.js & // 解析theme-chalk/src/icon.scss文件 生成 icon |
主要包含以上四个命令
npm run build:theme
构建主题相关
1 | node build/bin/gen-cssfile && // 生成各个组件的汇总样式css文件 |
npm run build:utils
设置环境变量 process.env.BABEL_ENV的值为utils,同时用babel命令编译整个src文件夹,并且将结果输出到lib文件夹下,lib不会去覆盖原来lib下的内容,编译时忽略’src/index.js’文件。
1 | cross-env BABEL_ENV=utils babel src --out-dir lib --ignore src/index.js |
npm run build:umd
这个是把组件中所有的多语言都转换成当下环境的语言,
可以去 src/locale/lang 中查看所有文件,
主要是日期选择器里面的本地化和一些组件的默认加载状态的文字。
1 | node build/bin/build-locale.js |
npm run clean
清楚文件rimraf lib && rimraf packages/*/lib && rimraf test/**/coverage
npm run deploy:build
1 | npm run build:file && |
npm run deploy:extension
cross-env NODE_ENV=production webpack --config build/webpack.extension.js
npm run dev:extension
1 | rimraf examples/extension/dist && |
npm run dev
1 | npm run build:file && |
npm run dev:play
与 dev 相比少了安装的步骤,以及后面的 template.js的构建,多了个 PLAY_ENV=true
1 | npm run build:file && |
npm run dist
1 | npm run clean && //先清理环境 |
打包生成最终的代码,这应该是最全的了
npm run i18n
国际化node build/bin/i18n.js
npm run lint
代码检查eslint src/**/* test/**/* packages/**/* build/**/* --quiet
生成新组件
node build/bin/new.js <new-component>