文档中心

探索 DWeb 框架的无限可能,构建下一代高性能 Web 应用

构建 (build)

DWeb 框架提供了强大的构建功能,可以将项目编译为生产版本,优化代码并生成静态资源。

构建生产版本

单应用模式

Code
# 构建项目
deno task build

# 或使用 CLI 命令
deno run -A @dreamer/dweb/cli build

多应用模式

Code
# 构建所有应用
deno task build

# 构建指定应用
deno run -A @dreamer/dweb/cli build:app-name

# 或在 deno.json 中配置任务别名
# "build:app-name": "deno run -A @dreamer/dweb/cli build:app-name"

构建优化

  • Tree Shaking:基于 esbuild 的高效 Tree Shaking,自动移除未使用的代码,显著减小生产环境包体积。
  • 资源哈希:自动为静态资源生成内容哈希文件名(如 style.a1b2c3.css),配合永久缓存策略,最大化利用浏览器缓存。
  • 预渲染优化:构建时自动识别静态路由并进行预渲染(SSG),提升首屏加载速度和 SEO 表现。

构建配置

dweb.config.ts 中配置构建选项:

Code
// dweb.config.ts
export default {
  build: {
    // 输出目录
    outDir: "dist",

    // 是否生成 source map(用于调试)
    sourcemap: true,

    // 是否压缩代码
    minify: true,

    // 目标 JavaScript 版本
    target: "es2022",
    
    // 其他选项
    // assetsDir: 'assets',      // 静态资源目录
    // publicDir: 'public',      // 公共文件目录
    // emptyOutDir: true,        // 构建前清空输出目录
  },
};

构建输出结构

Code
构建输出结构:

dist/
├── routes/          # 编译后的路由文件
├── assets/          # 静态资源
├── public/          # 公共文件(直接复制)
└── index.js         # 入口文件(如果存在)

相关文档