宇我的小宇宙
小工具 · 规范库 · 前端代码规范(Vue2 / Element-UI / 状态与接口 / 构建)

前端构建与多机构打包规范

← 返回上一页
rules/20-frontend/webpack-build.md

前端构建与多机构打包规范

构建体系

  • Webpack 3 + 自定义脚本,配置在 build/ 目录(webpack.base/dev/prod/dll.conf.js)。
  • 不是 Vue CLI / Vite。新增构建配置走既有 build/ 体系,不要引入 vue.config.js 或 vite.config.js。

多机构构建(核心约定)

项目通过 --env=<org> / --orgName=<org> 支持一套代码部署到多个医疗机构(高博/捷顺/一元/中兴/……)。机构标识:

npm scriptorgName说明
npm run dev / npm run dev:brenbren默认/高博
npm run dev:jshunjshun捷顺
npm run dev:eyuaneyuan一元
npm run dev:zxinzxin中兴
npm run dev:atmengatmeng—
npm run dev:fzsyfzsy—
npm run dev:cpingcping—
npm run dev:hlwshlws—
npm run dev:emremr电子病历微应用
npm run build:<org>同上生产打包

改动时的约束

区分通用与机构差异

  • 默认只改通用逻辑(对所有机构生效),通过运行时机构标识 orgName 控制差异。
  • 机构专属逻辑用 orgName 判断收敛到一处,不要散落到多个文件硬编码。
  • 改动若只面向某机构,明确说明影响范围,避免误伤其他机构。

环境变量

  • 机构相关配置(接口域名、标题、主题色等)通过 --env/--orgName 注入,在 config/ 下按机构区分。
  • 不要把某个机构的地址/标题硬编码进通用代码。

微前端打包

  • EMR_Micro_Web 等子应用作为 micro-app 子应用,其 package.json 独立,打包产物供主应用加载。
  • 修改子应用注意其独立的构建命令(build:emr)与资源 publicPath。

依赖与版本

  • 依赖较旧(webpack3 / node-sass / axios 0.15)。不要为单个改动升级构建工具链或核心库大版本(会引发连锁兼容问题)。
  • 新增依赖前评估与现有 webpack3/babel6 的兼容性;优先用项目已有的库实现。
  • engines 声明 node >= 4(历史值),实际以团队约定的 Node 版本为准;不要在代码里用最新 Node API。

提交前自检

  • 改动后至少本地 npm run dev:<你在用的org> 跑通,确认无编译报错。
  • 涉及通用代码的改动,说明是否影响其他机构构建。
  • 不要把调试用的 console.log、注释代码块、临时 debugger 提交进去。