logo
  • 指南
  • 配置
  • 插件
  • API
  • 示例
  • 社区
  • Modern.js 2.x 文档
  • 简体中文
    • 简体中文
    • English
    • 开始
      介绍
      快速上手
      版本升级
      名词解释
      技术栈
      核心概念
      页面入口
      构建工具
      Web 服务器
      基础功能
      路由
      路由基础
      配置式路由
      数据管理
      数据获取
      数据写入
      数据缓存
      渲染
      服务端渲染(SSR)
      服务端流式渲染(Streaming SSR)
      渲染缓存
      静态站点生成(SSG)
      渲染预处理 (Render Preprocessing)
      样式开发
      引入 CSS
      使用 CSS Modules
      使用 CSS-in-JS
      使用 Tailwind CSS
      HTML 模板
      引用静态资源
      引用 JSON 文件
      引用 SVG 资源
      引用 Wasm 资源
      调试
      数据模拟(Mock)
      网络代理
      使用 Rsdoctor
      使用 Storybook
      测试
      Playwright
      Vitest
      Jest
      Cypress
      路径别名
      环境变量
      构建产物目录
      部署应用
      进阶功能
      使用 BFF
      基础用法
      运行时框架
      扩展 BFF Server
      扩展一体化调用 SDK
      文件上传
      跨项目调用
      优化页面性能
      代码分割
      静态资源内联
      产物体积优化
      React Compiler
      提升构建性能
      浏览器兼容性
      配置底层工具
      源码构建模式
      服务端监控
      Monitors
      日志事件
      指标事件
      国际化
      基础概念
      快速开始
      配置说明
      语言检测
      资源加载
      路由集成
      API 参考
      高级用法
      最佳实践
      自定义 Web Server
      专题详解
      模块联邦
      简介
      开始使用
      应用级别模块
      服务端渲染
      部署
      集成国际化能力
      常见问题
      依赖安装问题
      命令行问题
      构建相关问题
      热更新问题
      从 Modern.js 2.0 升级
      概述
      配置变更
      入口变更
      自定义 Web Server 变化
      Tailwind 插件变更
      其他重要变更
      📝 编辑此页面
      上一页快速上手下一页名词解释

      #版本升级

      #手动升级

      Modern.js 所有的官方包使用统一版本号进行发布,因此升级时需要将所有 @modern-js/** 包的版本统一更新到目标版本。

      #升级步骤

      1. 查看最新版本

        你可以通过以下方式查看 Modern.js 的最新版本:

        • 访问 npm 查看 @modern-js/app-tools 的最新版本
        • 查看 GitHub Releases

        根据官网 Release Note,开发者也可以手动将项目升级到想要的版本。

      2. 更新 package.json

        在项目的 package.json 中,将所有 @modern-js/** 包的版本更新到目标版本。例如:

        package.json
        {
          "dependencies": {
            "@modern-js/app-tools": "3.0.0",
            "@modern-js/runtime": "3.0.0"
          },
          "devDependencies": {
            "@modern-js/types": "3.0.0"
          }
        }
      3. 重新安装依赖

        更新完 package.json 后,重新安装依赖:

        npm
        yarn
        pnpm
        bun
        deno
        npm install
        yarn install
        pnpm install
        bun install
        deno install
      Tip

      当升级时,需要对 Modern.js 官方提供的所有包做统一升级,而不是升级单个依赖。确保所有 @modern-js/** 包的版本号保持一致。

      #版本管理策略

      在 Modern.js 项目中,我们推荐所有官方提供的依赖都使用固定版本号,不使用 ^ 或 ~ 进行范围声明。例如:

      {
        "dependencies": {
          "@modern-js/app-tools": "x.y.z"
        }
      }

      这样可以确保依赖的版本是完全确定的,从而保证构建的一致性和可预测性。

      #锁定子依赖

      当项目某个子依赖出现问题,而 Modern.js 无法立即更新时,可以使用包管理器锁定子依赖版本。

      #pnpm

      对于使用 pnpm 的项目,请在项目根目录的 package.json 中添加以下配置,然后重新执行 pnpm install:

      package.json
      {
        "pnpm": {
          "overrides": {
            "package-name": "^1.0.0"
          }
        }
      }

      #Yarn

      对于使用 Yarn 的项目,请在项目根目录的 package.json 中添加以下配置,然后重新执行 yarn install:

      package.json
      {
        "resolutions": {
          "package-name": "^1.0.0"
        }
      }

      #Npm

      对于使用 Npm 的项目,请在项目根目录的 package.json 中添加以下配置,然后重新执行 npm install:

      package.json
      {
        "overrides": {
          "package-name": "^1.0.0"
        }
      }
      Info

      对于 Monorepo 仓库,只能在项目根目录的 package.json 中锁定依赖版本,并且会影响 Monorepo 中的所有 package。