npm run build命令详解

🚀 构建过程详解

1. 构建命令分析

根据 package.json 中的配置:

复制代码
{
  "scripts": {
    "build": "vite build",
    "preview": "vite preview"
  }
}

2. Vite构建配置

查看 vite.config.js 的构建相关配置:

复制代码
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': resolve(__dirname, 'src'),
    },
  },
  build: {
    outDir: 'dist',      // 输出目录
    assetsDir: 'assets', // 静态资源目录
  },
})

📋 执行构建的步骤

请在项目根目录执行以下命令:

复制代码
cd f:\WWW\assets-agent-web
npm run build

🎯 构建过程会发生什么?

第1步:代码检查和优化

  • TypeScript检查 - 确保类型安全

  • ESLint检查 - 代码规范检查

  • 依赖分析 - 分析模块依赖关系

第2步:资源处理

  • Vue组件编译 - 将 .vue 文件编译成JavaScript

  • CSS处理 - 提取和压缩CSS

  • TypeScript转译 - 转换为JavaScript

第3步:代码优化

  • Tree Shaking - 移除未使用的代码

  • 代码压缩 - 减小文件体积

  • 分包策略 - 按需加载优化

第4步:资源输出

构建完成后会在项目根目录生成 dist/ 文件夹:

复制代码
dist/
├── index.html              # 入口HTML文件
├── assets/
│   ├── index-xxx.js        # 主JavaScript文件
│   ├── index-xxx.css       # 主CSS文件
│   ├── vendor-xxx.js       # 第三方库
│   └── [其他静态资源]

dist/

├── index.html # 入口HTML文件

├── assets/

│ ├── index-xxx.js # 主JavaScript文件

│ ├── index-xxx.css # 主CSS文件

│ ├── vendor-xxx.js # 第三方库

│ └── [其他静态资源]

📊 构建结果预览

构建完成后,你可以:

1. 本地预览

复制代码
npm run preview

这会启动一个本地服务器预览构建结果。

2. 查看构建分析

复制代码
npm run build -- --report

查看详细的构建报告。

⚠️ 构建常见问题

1. 内存不足

复制代码
# 增加Node.js内存限制
set NODE_OPTIONS=--max-old-space-size=4096
npm run build

2. 构建失败检查

  • 检查代码语法错误

  • 确认所有依赖已安装: npm install

  • 查看TypeScript类型错误: npm run type-check

3. 路径问题

确保 vite.config.js 中的路径配置正确。

🎉 构建成功后的部署

构建完成后,你可以将 dist/ 目录中的文件部署到:

  1. Nginx服务器 - 使用提供的nginx配置模板

  2. 静态文件托管 - GitHub Pages、Netlify等

  3. CDN - 阿里云、腾讯云等

📝 总结

要构建这个项目,请在命令行执行:

复制代码
cd f:\WWW\assets-agent-web
npm run build

构建过程会:

  1. 编译所有Vue组件和TypeScript代码

  2. 优化和压缩资源

  3. 生成可部署的静态文件到 dist/ 目录

  4. 准备用于Nginx部署的文件

构建成功后,你可以使用 npm run preview 本地预览,或者将 dist/ 目录部署到Nginx服务器。

相关推荐
兆子龙12 分钟前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构
兆子龙1 小时前
用 Auto.js 实现挂机脚本:从找图点击到循环自动化
前端·架构
SuperEugene1 小时前
表单最佳实践:从 v-model 到自定义表单组件(含校验)
前端·javascript·vue.js
昨晚我输给了一辆AE861 小时前
为什么现在不推荐使用 React.FC 了?
前端·react.js·typescript
不会敲代码11 小时前
深入浅出 React 闭包陷阱:从现象到原理
前端·react.js
不会敲代码11 小时前
React性能优化:深入理解useMemo和useCallback
前端·javascript·react.js
Dilettante2581 小时前
我的 Monorepo 实践经验:从基础概念到最佳实践
前端·前端工程化
只会cv的前端攻城狮1 小时前
Elpis-Core — 融合 Koa 洋葱圈模型实现服务端引擎
前端·后端
Java小卷2 小时前
流程设计器为啥选择diagram-js
前端·低代码·工作流引擎
HelloReader2 小时前
Isolation Pattern(隔离模式)在前端与 Core 之间加一道“加密网关”,拦截与校验所有 IPC
前端