🌋 Pluggable enterprise-level react application framework.

Overview

English | 简体中文

umi

codecov NPM version CircleCI Build Status GitHub Actions status NPM downloads Install size brotli

🍙 Extensible enterprise-level front-end application framework.

Please consider following this project's author, sorrycc, and consider starring the project to show your ❤️ and support.


Features

  • 🎉 Extensible, Umi implements the complete lifecycle and makes it extensible, and Umi's internal functions are all plugins. Umi also support plugins and presets.
  • 📦 Out of the Box, Umi has built-in routing, building, deployment, testing, and so on. It only requires one dependency to get started. Umi also provides an integrated preset for React with rich functionaries.
  • 🐠 Enterprise, It has been verified by 3000+ projects in Ant Financial and projects of Alibaba, Youku, Netease, Fliggy, KouBei and other companies.
  • 🚀 Self Development, Including micro frontend library, component packaging, documentation tools, request library, hooks library, data flow, etc.
  • 🌴 Perfect Routing, Supports both configuration routing and convention routing, while with functional completeness, such as dynamic routing, nested routing, permission routing, and so on.
  • 🚄 Future Ready, Umi's community is also exploring new technologies. For example, modern mode, webpack @ 5, automated external, bundler less, etc.
  • 🌈 Support SSR, Starts Server-Side Render friendly.

Getting Started

Edit umi

Manually,

# Create directory
$ mkdir myapp && cd myapp

# Install dependency
$ yarn add umi

# Create page
$ npx umi g page index --typescript --less

# Start development
$ npx umi dev

Or Getting Started with Boilerplate.

Links

Contributors

This project exists thanks to all the people who contribute. [Contribute].

Feedback

Github Issue 钉钉群 微信群
umijs/umi/issues

LICENSE

MIT

Comments
  • 想了解一下 umi 2 与 3 对路由组件处理的异同

    想了解一下 umi 2 与 3 对路由组件处理的异同

    之前有实现一个基于路由实现页面多标签页渲染的功能,大致的实现方式是在 ant design pro 中的 BasicLayout 中劫持 children 的渲染,基于路由保存当前的 children 并渲染。大概率是升级到 umi 3 后和 umi 2 对于路由组件的处理不同,导致了一个奇怪的问题。

    分析 DOM 节点,发现 umi 3 下会看到所有打开的标签页在切换后都会渲染为切换后的标签页的 DOM,导致了即使是切换标签页,都会使得所有标签页卸载后再挂载新的页面 。相比于以前基于 umi 2 下的实现,每个标签页 DOM 节点都是各自页面的 DOM 节点,不存在 umi 3 那样的问题。

    感觉是 Switch 组件的行为有了变化,不知道是 React-Router 还是 umi 导致的?

    type(bug) 
    opened by yunsii 45
  • 组件开发插件

    组件开发插件

    背景

    为了更方便的进行组件开发调试,并能很爽的写文档。在调研了流行的 storybook 和 docz 后,选型使用 docz,目前将计划开发 umi-plugin-doczumi-plugin-component,在此跟进与讨论。

    项目地址

    https://github.com/umijs/umi-plugin-library

    进展

    • [ ] 细化方案
    • [x] 第一版演示 2018-12-13
    • [x] 内部第一版脚手架 2018-12-18
    • [x] 对外脚手架 2018-12-31
    type(enhancement) 
    opened by clock157 41
  • MFSU Why、What、How and FAQ

    MFSU Why、What、How and FAQ

    Why?

    提高研发效率。不管多大的项目,有缓存时启动 1s~3s+,热更新平均 500ms 内,

    什么是 MFSU?

    • 🍉 不管多大的项目,有缓存时启动 1s+,热更新平均 500ms 内
    • 🍒 配置 mfsu 开启,无需修改项目代码
    • 🍑 基于 webpack 的通用方案,umi 3 项目均可用
    • 🍓 可用于生产,可多人协作
    • 🥕 beta 阶段提供手把手服务群

    启用方式

    1. 先确保是 umi 3 项目
    2. 修改依赖里的 umi 版本为 "^3.5.0"
    - "umi": "3"
    + "umi": "^3.5.0"
    
    1. 重装依赖
    2. 修改配置,加上 mfsu 配置
    // 只需要 dev,这么配
    + mfsu: {},
    
    // 如果需要针对生产环境生效,这么配
    + mfsu: { production: { output: '.mfsu-production' } },
    
    1. 清空 src/.umi
    2. 启动 umi dev

    FAQ

    卡在 99% 不动了?

    99% 是进度条显示问题,webpackbar 和 webpack 5 的兼容还有点问题,实际已经成功了,可忽略。

    Invalid key: mfsu

    npx umi -v 看下,请确保是 [email protected] 或以上。

    Can not resolve ..., Do you mean ... 报错

    e.g.

    image

    几个选择:

    1. 需要更新相关依赖到最新,因为这个版本的依赖和 webpack5 不兼容
    2. chainWebpack 里配上 config.module.rule('mjs-rule').test(/.m?js/).resolve.set('fullySpecified', false);

    国际化不生效

    需更新 @umijs/preset-react 到最新,已在 @umijs/plugin-locale 0.13.0 里修复。

    Module parse failed: Top-Level-Await 报错

    e.g. image

    如果报错的是项目文件,给此文件后面加一行 export {},声明为 esm 模块格式。

    如果文件中有用动态 require 语法怎么办?

    改成 await import 写法,比如:

    const test = 'test';
    const foo = (await import((`../${test}`))).default;
    

    参考:https://github.com/umijs/umi/issues/6877

    开启 SSR 时报错

    暂不支持。

    覆盖依赖的样式不生效(比如覆盖 antd 的样式)

    目前没有很好的解法,需修改代码,提升覆盖样式的优先级。

    有使用 dva 插件同时效果不佳?

    配置 dva: { disableModelsReExport: {} },因为 export * from 目前尚未支持匹配到预编译。

    antd 主题配置为啥失效?

    如果你是用的 配置 less 变量文件 这种方式,切换到 theme 配置的方式,或尝试关闭 babel-plugin-import 的自动引入 less 文件功能。

    Beta 阶段手把手服务群

    type(mfsu) 
    opened by sorrycc 39
  • [Bug] 4.0.25 版本项目起不来了

    [Bug] 4.0.25 版本项目起不来了

    image

    @sorrycc

    ------ 以上是原文 受影响的比较多 @stormslowly 直接在原贴追加了 ---

    碰到这样问题,以下解法,

    1. 切换 mfsu 的策略
    // .umirc.ts 
    mfsu: { strategy :  'normal'}
    
    1. 如果想继续使用 新出的 mfsu eager 模式 有两种方式,尝试看看哪种解了你的问题
     //  .umirc.ts
    antd: { import: true}
    

    或者

    // .umirc.ts 
    mfsu: {
      shared: { react: { singleton: true}}
    }
    

    大家先参照这些 解法解解看,后继我会更新一篇 mfsu blog,说下到底发生了什么。

    opened by leshalv 37
  • SSR & Pre Rendering 方案

    SSR & Pre Rendering 方案

    SSR

    相关 ISSUE#377 #628

    使用方法

    首先通过 umi-plugin-ssr 插件开启 SSR 功能:

    // .umirc.js
    
    plugins: [
        ['umi-plugin-ssr', {
            // nodeExternalsWhitelist: []
            // 其他配置项待定
        }],
    ]
    

    然后在服务端脚本中使用插件暴露的 express 或者 koa 中间件:

    // server.js
    
    const { render } = require('umi-plugin-ssr');
    const app = require('express')();
    
    // 启动 Umi,这里可能需要暴露 API
    // 例如:umi.start();
    
    // 使用中间件
    app.use(render);
    

    实现思路

    重要的修改包括:

    • 在已有 ClientEntry 的基础上新增针对 ServerEntry 的 Webpack 构建流程,修改 target: 'node' output.libraryTarget: 'commonjs2'等等
    • 服务端预取数据。在页面组件中引入约定好的生命周期钩子。例如 Nuxt 中的 asyncData(),Next 中的 getInitialProps()
    • 使用 ReactDOMServer,将初始状态 initialState 注入 HTML
    • 在 Client 端 dva 同步初始状态 initialState,进行 hydrate()

    可能遇到的问题:

    • 目前 Umi 只能通过命令启动构建,可能需要暴露可编程使用的 API
    • 在 SSR 模式下,通常我们不希望将 node_modules 中的依赖打包进 server bundle 中,因此需要使用 Webpack externals 配置项。但是在某些场景下,我们还是需要将部分特定的依赖打包进来,这时就需要使用白名单了。例如在服务端渲染场景下常常遇到的一个问题是,某些第三方依赖使用了 document, window 这样在 Node.js 环境中不存在的对象。为了保证服务端渲染正常运行,通常使用 resolve.alias 引导 Webpack 使用空的 stub 对象,此时一定要同时在 nodeExternalsWhitelist 中加入该依赖。
    • 配合 PWA 中 ServiceWorker 使用时,不同于 SPA 只有一个 HTML,不可能把每个页面都加进预缓存列表。之前在 Vue SSR 中使用 ServiceWorker 时整理了一些通用的思路。

    Pre Rendering

    某些 SPA 中存在一部分需要 SEO 的重要静态页面,并不需要做整站 SSR。 Pre Rendering 本身依赖于 SSR 方案,在构建时将路由静态化成为对应的 HTML 文件。

    使用方法的话可以在约定/配置式路由基础上扩展。

    /**
     * title: Index Page
     * prerender: true
     * Routes:
     *   - ./src/routes/a.js
     *   - ./src/routes/b.js
     */
    

    参考资料

    Nuxt 中的 PreRender Vue SSR 中使用 ServiceWorker

    type(discussion) 
    opened by xiaoiver 36
  • 配置路由,开启layout,路由配置3层,页面不渲染

    配置路由,开启layout,路由配置3层,页面不渲染

    What happens?

    ant-design-pro v5.0.0版本,开启layout,配置路由,在pages下面建3层目录结构,配置路由,无法跳转到最底层路由

    最小可复现仓库(REQUIRED)

    Provide a mini GitHub repository which can reproduce the issue. Use yarn create @umijs/umi-app then upload to your GitHub

    https://codesandbox.io/s/stoic-merkle-6jjfk?file=/config/config.ts

    How To Reproduce

    点击access,点击role,进入role页面 , 点击click。 Steps to reproduce the behavior: 1. 2.

    Expected behavior 1. 2.

    Context

    type(bug) 
    opened by kisoua 34
  • umi3.x ssr 疑问

    umi3.x ssr 疑问

    • 之前用过nextjs做ssr, 现在打算看看umi3, 使用umi3之后希望能更好的和阿里的生态有个紧密的结合, 以期有新的好的方案, 如果我司需要能更好更方便的集成

    What happens?

    1. tdk问题 title description keywords 开发环境, title的内容, 页面显示的和源码中的不一样, 但是keywords description是一样的, build之后是正常的 开发环境: image image build之后: image image 不是太明白是什么问题, build之后查看源码是对的倒没什么问题, 但始终感觉有点问题

    2. 部署相关问题 copy的文档中的express的代码, 打包之后, 本地起一个服务模拟部署到线上/测试环境的情形, 但遇到这么几个问题, 希望大佬们能抽空帮忙看看:

    • express返回的都是text/html, css js也是, 导致样式渲染出问题, res.setHeader('Content-Type', 'text/html'); 这句删掉也是一样的, 是需要判断请求的文件然后设置不同的Content-Type吗?具体是如何操作呢?req和res打印出来一堆, 找起来好蛋疼, 而源码又看不懂找不到....
    • link路由切换会发生真实的请求
    • 页面报错Uncaught SyntaxError: Unexpected token '<', 翻issue, 里面有说到publicPath的问题, 设置了依旧报错
    • targets: { ie: 9 }, 但是打包产物dist/umi.js中依旧有箭头函数

    之前用nextjs的话部署是用它自己自带的next start, 然后启动了ssr的服务之后部署, 然后nginx反代到这个ssr服务即可

    Mini Showcase Repository(REQUIRED)

    Provide a mini GitHub repository which can reproduce the issue. Use yarn create @umijs/umi-app then upload to your GitHub

    https://github.com/SilentFlute/umi3.x-ssr.git

    How To Reproduce

    yarn -> 安装依赖 yarn start -> 本地开发模式 yarn build -> 打包 node server.js -> 本地启动node服务模拟部署

    Context

    • Umi Version: 3.2.3
    • Node Version: 12.16.3
    • Platform:win 10

    求帮助, 感谢

    type(ssr) 
    opened by SilentFlute 33
  • 升级新版本之后ie报错

    升级新版本之后ie报错

    umi-plugin-dva 升级到0.6.3

    Warning: The <DvaContainer /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change DvaContainer to extend React.Component instead. 
    SCRIPT5022: 引发了异常但未捕获 
    umi.js, 行17111 字符5
    The above error occurred in the <DvaContainer> component:
        in DvaContainer
    
    Consider adding an error boundary to your tree to customize error handling behavior.
    Visit https://fb.me/react-error-boundaries to learn more about error boundaries. 
    SCRIPT5022: 引发了异常但未捕获 
    

    https://github.com/umijs/umi-examples/tree/master/with-dva 可重现

    type(bug) 
    opened by xiaohuoni 31
  • umi 打包后体积太大了

    umi 打包后体积太大了

    是我们哪里做的不对吗,使用 Ant Design Pro,我看 Ant Pro 默认已经配置了按需加载,打包后 umi 体积居然有 2.5M,即使是宽带条件下,2.5M也太大了,一般来说控制在1M以下比较合适。有什么办法缩小打包体积呢, umi 相关引用如下:

        "umi": "^2.8.7",
        "umi-plugin-react": "^1.9.5",
        "umi-request": "^1.0.8",
    
    opened by hello-react 30
  • TypeError: Cannot read property 'ssr' of undefined

    TypeError: Cannot read property 'ssr' of undefined

    What happens?

    umi-build-dev版本更新了,但是不兼容旧的umi版本

    Plugin apply failed: Cannot read property 'ssr' of undefined
    ×  error     TypeError: Cannot read property 'ssr' of undefined
        at Array.<anonymous> (D:\Develop\antd-admin\node_modules\umi-build-dev\lib\plugins\afwebpack-config\index.js:76:22)
    
    type(bug) 
    opened by superlbr 27
  • FAQ

    FAQ

    整理日常咨询常被问到的问题,欢迎补充。

    开启按需加载后如何把 css 打包成一个文件?

    配置 splitChunks,比如:

    export default {
      plugins: [
        ['umi-plugin-react', {
          dynamicImport: {
            webpackChunkName: true,
          },
        }],
      ],
      chainWebpack(config) {
        config.optimization.splitChunks({
          cacheGroups: {
            styles: {
              name: 'styles',
              test: /\.(css|less)$/,
              chunks: 'async',
              minChunks: 1,
              minSize: 0,
            }
          },
        });
      },
    }
    

    打包后会输出:

    File sizes after gzip:
    
      126.85 KB  dist/umi.js
      535 B      dist/p__users.async.js
      533 B      dist/p__index.async.js
      337 B      dist/styles.async.js
      96 B       dist/styles.chunk.css
    

    示例:

    参考:

    • https://github.com/webpack-contrib/mini-css-extract-plugin#extracting-all-css-in-a-single-file
    • https://github.com/umijs/umi/blob/master/packages/umi-plugin-react/test/chunks/.umirc.js#L1
    FAQ 
    opened by sorrycc 27
  • umi4 子目录部署无法使用 [Bug] say something

    umi4 子目录部署无法使用 [Bug] say something

    What happens?

    "@umijs/max": "^4.0.33" ant-design-pro : 6.0.0.beta.1 (最新版本默认分支)

    在使用子目录的情况下

    import { history } from '@umijs/max';
    
    // app.tsx 中用来检查当前页面是否需要登录
      console.log('WITHELIST currentPath: ', location.pathname.toLowerCase());
    
    

    umi 3 : history.location.pathname 显示为 "/login" umi 4 :history.location.pathname 显示为 "/sea/login"

    Mini Showcase Repository(REQUIRED)

    Please provide a minimal reproduction then upload to your GitHub. 请提供 最小重现,并上传到你的 GitHub 仓库

    https://github.com/ant-design/ant-design-pro/issues/10471

    How To Reproduce

    Steps to reproduce the behavior: 1. 2.

    Expected behavior 1. 2.

    Context

    我的配置如下 config.local.ts

    {
      base: '/sea/',
      outputPath: 'dist/sea',
      publicPath: '/sea/',
      manifest: { basePath: '/sea' },
      define: {
        API_BASE_URL: 'http://localhost:2919/SalesPortal',
        CLIENT_ROOT: 'http://localhost:1688/sea',
        CLIENT_ID: 'sea_client',
        SKIP_LOGIN_PAGE: false,
        LOGIN_PAGE: '/user/login',
        DISABLE_LANGSELECT: true,
        PUBLIC_PATH: '/sea/'
      },
      locale: { default: 'en-US' },
      layout: { title: 'sea (Testing)' },
      headScripts: [ { src: '/sea/scripts/loading.js', async: true } ]
    }
    

    且开启 runtimePublicPath:{} 后打不开页面,以上问题在 exportStatic 未开启的情况下测试

    • Umi Version:"@umijs/max": "^4.0.33"
    • Node Version:
    • Platform:
    opened by hyzx86 4
  • feat: ✨ 支持 external 为 function,函数接口和 webpack 对齐

    feat: ✨ 支持 external 为 function,函数接口和 webpack 对齐

    但是 mfsu 调用 external 函数时 已经没有很多上下文信息,增加 __mfsu 来表明调用 来自 mfsu,做实现的兼容; 目前只能支持同步的 external。

    function ({ context, request, contextInfo, getResolve }, callback)
    

    ref: https://webpack.js.org/configuration/externals/#function

    opened by stormslowly 5
  • [Feature Request] 发版后,页面不刷新会报错,希望能监听这种异常,方便提示用户刷新页面

    [Feature Request] 发版后,页面不刷新会报错,希望能监听这种异常,方便提示用户刷新页面

    image

    Background

    A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

    Proposal

    Describe the solution you'd like, better to provide some pseudo code.

    Additional context

    Add any other context or screenshots about the feature request here.

    opened by junegod 5
  • [热更新] 目前umi的的乾坤应用嵌套的子应用没有热更新

    [热更新] 目前umi的的乾坤应用嵌套的子应用没有热更新

    项目分别是umi4.0.40中examples里的qiankun-master和qiankun-slave 项目地址:https://github.com/umijs/umi/tree/master/examples 分别启动项目后: image 进入slave image 代码中修改pages/home.ts中的HomePage内容,然后保存,但页面没有反应,热更新没有生效

    opened by liuguang2016 7
Releases(v4.0.41)
  • v4.0.41(Dec 29, 2022)

    What's Changed

    • 新增 无网络连接启动 devServer 时提示无网络 by @AkaraChen in https://github.com/umijs/umi/pull/10153
    • 修复 mfsu 依赖配置中有函数时导致缓存一直失效的问题 function by @xierenyuan in https://github.com/umijs/umi/pull/10166
    • 修复 乾坤应用本地研发时热更新报错 by @HiLanXiao in https://github.com/umijs/umi/pull/10165
    • 修复 移除 globalThis 以支持低版本浏览器 by @sorrycc in https://github.com/umijs/umi/pull/10179
    • 修复 import.meta.x 导致的模块导出解析失败 by @fz6m in https://github.com/umijs/umi/pull/10149
    • 修复 jest generator 生成的script 在 windows 可用 by @zhoudailin in https://github.com/umijs/umi/pull/10133
    • 文档 增加使用 bunx 创建项目示例 by @fz6m in https://github.com/umijs/umi/pull/10143
    • 文档 增加 overrides.less 功能介绍 by @PeachScript in https://github.com/umijs/umi/pull/10119
    • 文档 增加 history.push state 参数的说明 by @stormslowly in https://github.com/umijs/umi/pull/10160

    New Contributors

    • @conorzhong made their first contribution in https://github.com/umijs/umi/pull/10139
    • @AkaraChen made their first contribution in https://github.com/umijs/umi/pull/10153

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.40...v4.0.41

    Source code(tar.gz)
    Source code(zip)
  • v4.0.40(Dec 23, 2022)

    What's Changed

    • 回滚 支持调用 history.push 时使用相对路径 https://github.com/umijs/umi/pull/10122 by @stormslowly in https://github.com/umijs/umi/pull/10134

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.39...v4.0.40

    Source code(tar.gz)
    Source code(zip)
  • v4.0.39(Dec 22, 2022)

    What's Changed

    • 新增 antd 插件运行时配置钩子 by @hanzebang in https://github.com/umijs/umi/pull/10051
    • 支持调用 history.push 时使用相对路径 by @stormslowly in https://github.com/umijs/umi/pull/10122
    • 修复子路由 path 为空时 exportStatic 产物缺失的问题 by @fz6m in https://github.com/umijs/umi/pull/10091
    • 修复 MFSU 缓存在 define 配置项修改时不会刷新的问题 by @fz6m in https://github.com/umijs/umi/pull/10096
    • 修复 bundler-esbuild 无法处理 dataurl 资源导致 MFSU 编译失败的问题 by @fz6m in https://github.com/umijs/umi/pull/10098
    • 修复 srcTranspiler 配置项的类型错误 by @zhoudailin in https://github.com/umijs/umi/pull/10118
    • 优化 Umi Max 脚手架内的文档链接 by @BoyYangzai in https://github.com/umijs/umi/pull/10099
    • 优化 layout 插件以兼容旧的 noFoundunAccessible 配置 by @hanzebang in https://github.com/umijs/umi/pull/10110
    • 优化 antd 插件允许对 antd v5 启用 import,同时不允许对 antd v5 设置 style by @PeachScript in https://github.com/umijs/umi/pull/10129
    • 文档完善 patchClientRoutes 示例 by @hanzebang in https://github.com/umijs/umi/pull/10094
    • 文档完善 define 配置项添加全局类型声明的示例 by @hanzebang in https://github.com/umijs/umi/pull/10093

    New Contributors

    • @zhoudailin made their first contribution in https://github.com/umijs/umi/pull/10118

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.38...v4.0.39

    Source code(tar.gz)
    Source code(zip)
  • v3.5.36(Dec 22, 2022)

    • fix(bundler-webpack): compatibility of extraBabelIncludes config (#8811) e7e2688a0

    https://github.com/umijs/umi/compare/v3.5.35...v3.5.36

    Source code(tar.gz)
    Source code(zip)
  • v4.0.38(Dec 16, 2022)

    What's Changed

    • Revert "fix(route): absPath missing slash" by @sorrycc in https://github.com/umijs/umi/pull/10086
    • Revert "feat: terminal shortcuts" by @sorrycc in https://github.com/umijs/umi/pull/10089

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.37...v4.0.38

    Source code(tar.gz)
    Source code(zip)
  • v4.0.37(Dec 16, 2022)

    What's Changed

    • 新增交互式 terminal 快捷键 by @fz6m in https://github.com/umijs/umi/pull/10002
    • 新增微生成器支持自定义页面和组件模板 by @mysteryven in https://github.com/umijs/umi/pull/9974
    • 优化脚手架模板,默认使用 defineConfig 包裹配置 by @BoyYangzai in https://github.com/umijs/umi/pull/10022
    • 优化 vite 模式,升级 vite 到 3.2.5 by @xierenyuan in https://github.com/umijs/umi/pull/10039
    • 优化 qiankun 插件,增加默认的微应用容器样式 by @kuitos in https://github.com/umijs/umi/pull/10072
    • 优化 bundler-esbuild 支持修改配置 by @fz6m in https://github.com/umijs/umi/pull/10026
    • 修复 qiankun 插件当 slave 配了 basename 时 renderContext 可能不正确的问题 by @stormslowly in https://github.com/umijs/umi/pull/10012
    • 修复 model 插件,解决 model state ref 在比较时可能不是最新的问题 by @sorrycc in https://github.com/umijs/umi/pull/10077
    • 修复 vite 模式下 hot update 时 pluginManager 可能为 null 的问题 by @xierenyuan in https://github.com/umijs/umi/pull/10048
    • 修复 vite 模式下 favicon middleware 不生效的问题 by @xierenyuan in https://github.com/umijs/umi/pull/10038
    • 修复路由的 absPath 在一些场景下缺少 / 的问题 by @fz6m in https://github.com/umijs/umi/pull/10068
    • 修复 mf 功能 remote.js 没有 follow hash 配置的问题 by @stormslowly in https://github.com/umijs/umi/pull/10082
    • 文档新增「如何使用插件」 by @fz6m in https://github.com/umijs/umi/pull/10049
    • 文档新增关于「压缩使用 utf8」的说明 by @fz6m in https://github.com/umijs/umi/pull/10030

    New Contributors

    • @jiangkaifree made their first contribution in https://github.com/umijs/umi/pull/10015
    • @bowen-wu made their first contribution in https://github.com/umijs/umi/pull/10006
    • @jc1144096387 made their first contribution in https://github.com/umijs/umi/pull/10035

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.36...v4.0.37

    Source code(tar.gz)
    Source code(zip)
  • v4.0.36(Dec 8, 2022)

    What's Changed

    • 修复 webpack chunks 提取逻辑和 mpa 场景冲突的问题 by @sorrycc in https://github.com/umijs/umi/pull/10005

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.35...v4.0.36

    Source code(tar.gz)
    Source code(zip)
  • v4.0.35(Dec 8, 2022)

    What's Changed

    • 新增 valtio 通过配置开启 (❗️breaking change) by @sorrycc in https://github.com/umijs/umi/pull/9971
    • 新增 styled-components 插件 by @sorrycc in https://github.com/umijs/umi/pull/9970
    • 新增 styled-components 插件 dev 开启 babel-plugin-styled-components by @sorrycc in https://github.com/umijs/umi/pull/9999
    • 新增 MFSU eager 模式支持 esbuild 构建 by @stormslowly in https://github.com/umijs/umi/pull/9919
    • 新增 codeSplitting 支持 auto load chunk by @xierenyuan in https://github.com/umijs/umi/pull/9859
    • 新增 webpack analyze 配置项 by @fz6m in https://github.com/umijs/umi/pull/9941
    • 新增 useSelectedRoutes API 文档 by @fz6m in https://github.com/umijs/umi/pull/9975
    • 新增 routes 配置修改不重启 dev 服务 by @xierenyuan in https://github.com/umijs/umi/pull/9873
    • 新增 valtio 插件导出 derive by @sorrycc in https://github.com/umijs/umi/pull/9951
    • 新增 valtio 插件导出 underive 和 subscribeKey by @sorrycc in https://github.com/umijs/umi/pull/9998
    • 修复 plug-model model 文件加载顺序避免初始化失败 @elivoa in https://github.com/umijs/umi/pull/9846
    • 修复 乾坤父应用同时存在重定向根路由时,父应用layout不会包裹子应用的bug by @HiLanXiao in https://github.com/umijs/umi/pull/9829
    • 修复 plugin API onGenerateFiles 类型问题 by @mysteryven in https://github.com/umijs/umi/pull/9880
    • 修复 配置 test:false 关闭 测试 by @fz6m in https://github.com/umijs/umi/pull/9870
    • 修复 MFSU 独立使用是 支持 entry 相对路径 by @mysteryven in https://github.com/umijs/umi/pull/9800
    • 新增 create-umi 新增 Antd 版本选功能 by @mysteryven in https://github.com/umijs/umi/pull/9918
    • 修复 process.env.PORT 可能取不到正确的端口的问题 by @acg-developer in https://github.com/umijs/umi/pull/9952
    • 修复 qiankun 子应用 history 参数获取错误问题 by @PeachScript in https://github.com/umijs/umi/pull/9953
    • 修复 MFSU 解析依赖到 node 构建产物的问题 by @stormslowly in https://github.com/umijs/umi/pull/9976
    • 修复 render 运行时配置中 history undefined 问题 by @xiaohuoni in https://github.com/umijs/umi/pull/9871
    • 文档 更正国际化(多语言)链接 by @FriedRiceNoodles in https://github.com/umijs/umi/pull/9866
    • 文档 修改 clientloader 实例代码 by @chenyanggis in https://github.com/umijs/umi/pull/9934
    • 文档 更正 qiankun 运行时说明 by @kuitos in https://github.com/umijs/umi/pull/9981

    New Contributors

    • @elivoa made their first contribution in https://github.com/umijs/umi/pull/9846
    • @FriedRiceNoodles made their first contribution in https://github.com/umijs/umi/pull/9866
    • @chenyanggis made their first contribution in https://github.com/umijs/umi/pull/9934
    • @acg-developer made their first contribution in https://github.com/umijs/umi/pull/9952

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.34...v4.0.35

    Source code(tar.gz)
    Source code(zip)
  • v4.0.34(Dec 1, 2022)

    What's Changed

    • 修复给 qiankun 子应用传递字符串类型的 history 无法正常工作的问题 by @PeachScript in https://github.com/umijs/umi/pull/9860
    • 修复 precommit generator 在 Windows 系统下执行 chmod 导致报错的问题 by @wyy0512 in https://github.com/umijs/umi/pull/9879
    • 修复 SPEED_MEASURE 启用时 mini-css-extract-plugin 无法正常工作的问题 by @fz6m in https://github.com/umijs/umi/pull/9907
    • 修复 MFSU eager 在使用 APP_ROOT 时编译不正常的问题 by @stormslowly in https://github.com/umijs/umi/pull/9884 https://github.com/umijs/umi/pull/9885
    • 修复在项目存在 .babelrcpolyfill.ts 临时文件生成错误导致编译失败的问题 by @PeachScript in https://github.com/umijs/umi/pull/9901
    • 修复 MFSU eager 在项目 tsconfig 设置保留 JSX 时执行错误的问题 by @stormslowly in https://github.com/umijs/umi/pull/9915
    • 修复对相对路径引用的模块 splitChunk 时生成错误资源名的问题 by @fz6m in https://github.com/umijs/umi/pull/9857
    • 新增 onHistoryInit 参数用于 qiankun MicroApp 组件获取子应用的 history 实例 by @PeachScript in https://github.com/umijs/umi/pull/9862
    • 支持给 umi config set 传递 JSON 字符串值 by @stormslowly in https://github.com/umijs/umi/pull/9889

    New Contributors

    • @BoyYangzai made their first contribution in https://github.com/umijs/umi/pull/9877

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.33...v4.0.34

    Source code(tar.gz)
    Source code(zip)
  • v4.0.33(Nov 24, 2022)

    What's Changed

    • 新增 modifyClientRenderOpts runtime hook by @fz6m in https://github.com/umijs/umi/pull/9787
    • 优化 qiankun 插件,支持本地研发代理请求时携带请求头 by @HiLanXiao in https://github.com/umijs/umi/pull/9740
    • 优化 onBuildHtmlComplete 插件 api,增加 htmlFiles 属性 by @stormslowly in https://github.com/umijs/umi/pull/9847
    • 优化 history api 支持无 pathname 传入 by @stormslowly in https://github.com/umijs/umi/pull/9804
    • 升级 esbuild 依赖以支持 TypeScript 新的 satisfies 语法 by @fz6m in https://github.com/umijs/umi/pull/9816
    • 回滚 base config 要求 / 结尾的校验 by @stormslowly in https://github.com/umijs/umi/pull/9809
    • 修复 dev 自动重启时端口由于没有释放而可能递增的问题 by @sorrycc in https://github.com/umijs/umi/pull/9802
    • 修复 utils 中使用 ?? 导致 node 版本检测失效的问题 by @sorrycc in https://github.com/umijs/umi/pull/9803
    • 修复 favicon 路径没有处理 publicPath 配置的问题 by @fz6m in https://github.com/umijs/umi/pull/9819
    • 修复 dev 模式下 stats.toJson() 太慢导致请求 html 路由的性能问题 by @sorrycc in https://github.com/umijs/umi/pull/9840
    • 修复 monorepo 场景下 route chunk 的兼容性问题 by @PeachScript in https://github.com/umijs/umi/pull/9834
    • 修复 splitChunks 配置 base64 hash 包含非法字符的问题 by @fz6m in https://github.com/umijs/umi/pull/9851
    • 修复 antd 5 场景下 layout 和 locale 对于 menu 的使用 by @chenshuai2144 in https://github.com/umijs/umi/pull/9842
    • 修复 mfsu + monorepo 下的文件解析逻辑 by @stormslowly in https://github.com/umijs/umi/pull/9771
    • 修复 mfsu + monorepo 下非 src 下文件改动进入到代码列表的问题 by @stormslowly in https://github.com/umijs/umi/pull/9772
    • 修复 request 插件 dataField 类型推导问题 by @zenotsai in https://github.com/umijs/umi/pull/9747

    New Contributors

    • @simonwong made their first contribution in https://github.com/umijs/umi/pull/9723

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.32...v4.0.33

    Source code(tar.gz)
    Source code(zip)
  • v4.0.32(Nov 17, 2022)

    What's Changed

    • fix(preset-umi): codeSplitting depPerChunk unmatch by @sorrycc in https://github.com/umijs/umi/pull/9797
    • Revert "fix: history is undefined on render (#9765)" by @stormslowly in https://github.com/umijs/umi/pull/9798

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.31...v4.0.32

    Source code(tar.gz)
    Source code(zip)
  • v4.0.31(Nov 17, 2022)

    What's Changed

    • 新增 precommit 生成器 by @wyy0512 in https://github.com/umijs/umi/pull/9784
    • 新增 支持 wappalyzer 版本检测 by @fz6m in https://github.com/umijs/umi/pull/9777
    • 新增 测试功能 by @chenshuai2144 in https://github.com/umijs/umi/pull/9792
    • 优化 加载页面文字样式 by @rovoskarl in https://github.com/umijs/umi/pull/9742
    • 修复 qiankun unmount 错误 by @chenshuai2144 in https://github.com/umijs/umi/pull/9745
    • 修复 页面使用 NPM 中的组件时,分包名有转义字符的问题 by @PeachScript in https://github.com/umijs/umi/pull/9743
    • 修复 使用内部 Helmet 渲染失败的问题 by @PeachScript in https://github.com/umijs/umi/pull/9744
    • 修复 Helmet head 在 ssr 中丢失的问题 by @PeachScript in https://github.com/umijs/umi/pull/9769
    • 修复 构建配置 publicPath 默认值 by @mysteryven in https://github.com/umijs/umi/pull/9786
    • 修复 组件生成器在指定路径是文件名大小写问题 by @fz6m in https://github.com/umijs/umi/pull/9782
    • 修复 Antd 插件 iconPrefixCls 配置对 message 无效的情况 by @hanzebang in https://github.com/umijs/umi/pull/9778
    • 修复 base config 增加 '/' 结尾的限制 by @stormslowly in https://github.com/umijs/umi/pull/9776
    • 修复 pro layout 类型定义 by @fz6m in https://github.com/umijs/umi/pull/9753
    • 修复 defineConfig 类型错误 by @xiaohuoni in https://github.com/umijs/umi/pull/9774
    • 修复 history 在 render 时未定义的问题 by @xiaohuoni in https://github.com/umijs/umi/pull/9765
    • 修复 MFSU 依赖构建不使用 CopyPlugin by @stormslowly in https://github.com/umijs/umi/pull/9751
    • 文档 修复 typo @learnsomesome in https://github.com/umijs/umi/pull/9738
    • 文档 新增 legacy 和 code splitting 文档内容 by @fz6m in https://github.com/umijs/umi/pull/9754
    • 示例 增加 tsconfig.json 示例 by @fz6m in https://github.com/umijs/umi/pull/9783

    New Contributors

    • @learnsomesome made their first contribution in https://github.com/umijs/umi/pull/9738
    • @mysteryven made their first contribution in https://github.com/umijs/umi/pull/9786

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.30...v4.0.31

    Source code(tar.gz)
    Source code(zip)
  • v4.0.30(Nov 10, 2022)

    What's Changed

    • 新增 Helmet 组件导出、以支持 SSR 下的 Helmet 渲染 by @PeachScript in https://github.com/umijs/umi/pull/9727
    • 修复 crossorigin 配置项校验字段错误的问题 by @xierenyuan in https://github.com/umijs/umi/pull/9698
    • 修复 Vite 模式下热更新失效的问题 by @2239559319 in https://github.com/umijs/umi/pull/9704
    • 修复 MFSU 的 eager 模式下 polling 失败、等待 5s 的问题 by @stormslowly in https://github.com/umijs/umi/pull/9682
    • 修复 404 路由预渲染失败的问题 by @PeachScript in https://github.com/umijs/umi/pull/9718
    • 修复 SSR 的 build-manifest.json 在 Windows 下路径异常的问题 by @fz6m in https://github.com/umijs/umi/pull/9722
    • 修复 Umi 默认静态资源的读取逻辑不兼容对象值的问题 by @sorrycc in https://github.com/umijs/umi/pull/9737
    • 修复兜底 mf 依赖构建时有置顶 chunk 名的问题 by @stormslowly in https://github.com/umijs/umi/pull/9732
    • 优化模块解析失败时的错误提示 by @hanzebang in https://github.com/umijs/umi/pull/9694
    • 支持插件修改 appJS 的注册路径 by @PeachScript in https://github.com/umijs/umi/pull/9726
    • 回滚用于测试的 TestBrowser 接口,优化后再重新发布 by @sorrycc in https://github.com/umijs/umi/pull/9729

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.29...v4.0.30

    Source code(tar.gz)
    Source code(zip)
  • v4.0.29(Nov 4, 2022)

    What's Changed

    • 新增 codeSplitting 配置,提供 3 个策略供选择 by @sorrycc in https://github.com/umijs/umi/pull/9646
    • 新增 test 方案,可基于路由测试应用 by @chenshuai2144 in https://github.com/umijs/umi/pull/9556
    • 新增 onBeforeMiddleware 插件接口 by @xierenyuan in https://github.com/umijs/umi/pull/9685
    • 优化 exportStatic,支持与 ssr 搭配渲染 html 内容 by @PeachScript in https://github.com/umijs/umi/pull/9656
    • 优化 dev 启动时的 loading 页,补充构建详情 by @rovoskarl in https://github.com/umijs/umi/pull/9666
    • 优化 logger util,提供 time 方法 by @fz6m in https://github.com/umijs/umi/pull/9661
    • 优化 analytics 插件,支持 ga4 by @fz6m in https://github.com/umijs/umi/pull/9658
    • 优化 antd 插件,在使用 antd 5 时禁用 import 配置项 by @stormslowly in https://github.com/umijs/umi/pull/9552
    • 修复 monorepoRedirect + APP_ROOT 使用场景下的问题 by @fz6m in https://github.com/umijs/umi/pull/9660
    • 修复 chainWebpack 的类型问题 by @fz6m in https://github.com/umijs/umi/pull/9659
    • 修复 jsx import source 使用 auto 模式 by @fz6m in https://github.com/umijs/umi/pull/9641
    • 修复 mfsu eager 模式下 JS 的代码预处理问题 by @stormslowly in https://github.com/umijs/umi/pull/9647
    • 修复 locale 插件 getIntl 没有传 locale 时未获取默认 locale 的问题 by @hanzebang in https://github.com/umijs/umi/pull/9672
    • 修复 polyfill targets 未生效的问题 by @2239559319 in https://github.com/umijs/umi/pull/9298
    • 修复 overrides.less 和 vite 模式的兼容问题 by @xierenyuan in https://github.com/umijs/umi/pull/9688
    • 修复 devtool api 和 vite 模式的兼容问题 by @xierenyuan in https://github.com/umijs/umi/pull/9690
    • 更新 webpack 依赖到 5.74.0,修复可能会导致多次热编译的问题 by @xierenyuan in https://github.com/umijs/umi/pull/9693

    New Contributors

    • @rovoskarl made their first contribution in https://github.com/umijs/umi/pull/9666

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.28...v4.0.29

    Source code(tar.gz)
    Source code(zip)
  • v4.0.28(Oct 28, 2022)

    What's Changed

    • 修复 layout 插件没有处理 props.route 为空的场景 by @chenshuai2144 in https://github.com/umijs/umi/pull/9643

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.27...v4.0.28

    Source code(tar.gz)
    Source code(zip)
  • v4.0.27(Oct 27, 2022)

    What's Changed

    • 新增 导出静态站点功能 by @PeachScript in https://github.com/umijs/umi/pull/9602
    • 新增 umi 命令行提示是否想使用这个命令提示 by @fz6m in https://github.com/umijs/umi/pull/9599
    • 修复 useMatch 返回空值的问题 by @iamkun in https://github.com/umijs/umi/pull/9582
    • 修复 rootContainer 运行时参数,与文档描述保持一致 by @minwe in https://github.com/umijs/umi/pull/9596
    • 修复 locale 插件 intl 依赖丢失问题 by @sorrycc in https://github.com/umijs/umi/pull/9620
    • 修复 overrides.less 和 antd 动态加载不兼容的问题 by @PeachScript in https://github.com/umijs/umi/pull/9595
    • 修复 children 和 layout 混用导致的权限失效问题 by @chenshuai2144 in https://github.com/umijs/umi/pull/9587
    • 文档 更新 MFSU faq by @sorrycc in https://github.com/umijs/umi/pull/9590

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.26...v4.0.27

    Source code(tar.gz)
    Source code(zip)
  • v4.0.26(Oct 20, 2022)

    What's Changed

    • 新增 qiankun 插件的 threshold 配置,避免低端机场景 prefetch 造成的 oom by @kuitos in https://github.com/umijs/umi/pull/9548
    • 新增约定式 overrides.less 用于覆盖依赖样式,该文件内的样式表会被自动提升优先级 by @PeachScript in https://github.com/umijs/umi/pull/9527
    • 新增源码检测规则,不允许从 .umi 下引入、以免构建出现问题 by @sorrycc in https://github.com/umijs/umi/pull/9553
    • 修复 MFSU eager 模式挂载多余的 babel-plugin-import 导致编译失败的问题 by @stormslowly in https://github.com/umijs/umi/pull/9549
    • 修复 MFSU eager 模式意外探测 .umi-test 目录的问题 by @stormslowly in https://github.com/umijs/umi/pull/9528
    • 修复 layout 插件 routes 数据结构的兼容性问题 by @chenshuai2144 in https://github.com/umijs/umi/pull/9567
    • 优化 MFSU eager 模式引起的 Node.js 运行时警告 by @fz6m in https://github.com/umijs/umi/pull/9534
    • 优化 esbuild 压缩反向优化引起的兼容性问题,指定 esbuild 压缩产物目标为 es2015 by @sorrycc in https://github.com/umijs/umi/pull/9573

    New Contributors

    • @maquannene made their first contribution in https://github.com/umijs/umi/pull/9557

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.25...v4.0.26

    Source code(tar.gz)
    Source code(zip)
  • v3.5.35(Dec 22, 2022)

    • feat(umi): export deps that bigfish depend on (#9584) 47cbe0963
    • feat(preset-built-in): add env to disable app runtime plugin (#9579) fa3f62a00
    • dep(bundler-webpack): bump terser to 5.14.2 (#9242) 2636ef266
    • dep(preset-built-in): bump ansi-html to ^0.0.8 (#9223) 7e79dfd38
    • dep(preset-built-in): bump mime to 1.4.1 (#9209) 006fe5929

    https://github.com/umijs/umi/compare/v3.5.34...v3.5.35

    Source code(tar.gz)
    Source code(zip)
  • v4.0.25(Oct 13, 2022)

    What's Changed

    • 新增 MFSU 模式默认开启 eager 模式 by @stormslowly in https://github.com/umijs/umi/pull/9490
    • 新增 antd 插件支持 v5 的 theme token by @PeachScript in https://github.com/umijs/umi/pull/9509
    • 修复 MFSU eager 模式下样式修改需要等待 5s 的问题 by @stormslowly in https://github.com/umijs/umi/pull/9489
    • 修复 Link 组件透传 prefetch 导致的警告 by @wkeylin in https://github.com/umijs/umi/pull/9499
    • 修复从隐藏目录下引入路由组件会产出隐藏 chunk 产物的问题 by @PeachScript in https://github.com/umijs/umi/pull/9498
    • 修复 qiankun 插件的路由匹配问题 by @iamkun in https://github.com/umijs/umi/pull/9511
    • 修复 MFSU eager 模式不支持 import() 语法的问题 by @stormslowly in https://github.com/umijs/umi/pull/9517

    New Contributors

    • @iamkun made their first contribution in https://github.com/umijs/umi/pull/9511
    • @wujunyi792 made their first contribution in https://github.com/umijs/umi/pull/9518

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.24...v4.0.25

    Source code(tar.gz)
    Source code(zip)
  • v4.0.24(Sep 29, 2022)

    What's Changed

    • Revert "Remove route from chenshuai2144" by @sorrycc in https://github.com/umijs/umi/pull/9471

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.23...v4.0.24

    Source code(tar.gz)
    Source code(zip)
  • v4.0.23(Sep 29, 2022)

    What's Changed

    • 新增 valtio 插件, 欢迎尝鲜 文档 示例 by @sorrycc in https://github.com/umijs/umi/pull/9442
    • 优化 access 插件, 子路由的访问权限码未设定继承父路由 by @sorrycc in https://github.com/umijs/umi/pull/9431
    • 优化 MFSU 缓存损坏的情况下缓存恢复和错误提示 by @stormslowly in https://github.com/umijs/umi/pull/9433
    • 优化 Dva 插件类型提示 by @xiaohuoni in https://github.com/umijs/umi/pull/9444
    • 优化 chainWebpack 插件类型提示 by @Jetsly in https://github.com/umijs/umi/pull/9445
    • 优化 ignoreMomentLocale 默认开启 by @xierenyuan in https://github.com/umijs/umi/pull/9466
    • 修复 MFSU 支持 js 文件中使用 jsx 语法 by @stormslowly in https://github.com/umijs/umi/pull/9463
    • 文档 优化插件 API 介绍 by @sogud in https://github.com/umijs/umi/pull/9441

    New Contributors

    • @sogud made their first contribution in https://github.com/umijs/umi/pull/9441

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.22...v4.0.23

    Source code(tar.gz)
    Source code(zip)
  • v4.0.22(Sep 22, 2022)

    What's Changed

    • 新增 mpa 全局 layout 配置 by @sorrycc in https://github.com/umijs/umi/pull/9360
    • 新增 mpa 支持配置全局入口文件 by @sorrycc in https://github.com/umijs/umi/pull/9395
    • 新增 构建命令显示构建产物文件大小显示 by @fz6m in https://github.com/umijs/umi/pull/9259
    • 新增 did-you-know 条目 by @stormslowly in https://github.com/umijs/umi/pull/9205
    • 新增 dva 插件跳过模型文件校验配置 by @sorrycc in https://github.com/umijs/umi/pull/9388
    • 新增 MFSU esbuild 下 对 wasm 支持 by @notcold in https://github.com/umijs/umi/pull/9366
    • 新增 onRouteChange api 增加 basename 参数 by @sorrycc in https://github.com/umijs/umi/pull/9405
    • 新增 babel 插件 classPropertiesLoose 的支持 by @xierenyuan in https://github.com/umijs/umi/pull/9413
    • 新增 vite optimizeDeps 支持 dva$ 别名的写法 by @xierenyuan in https://github.com/umijs/umi/pull/9411
    • 新增 对 npm worksspace monorepoRedirect 支持 by @sorrycc in https://github.com/umijs/umi/pull/9409
    • 优化 node 版本 < v16.9.0 配置错误信息展示 by @stormslowly in https://github.com/umijs/umi/pull/9315
    • 优化 MFSU 依赖缺失报错 by @stormslowly in https://github.com/umijs/umi/pull/9365
    • 优化 vite 模式下禁用 polyfill,提升加载速度 by @xierenyuan in https://github.com/umijs/umi/pull/9371
    • 修复 mpa 在 windows 下兼容性 by @fz6m in https://github.com/umijs/umi/pull/9348
    • 修复 使用淘宝源依赖安装错误的问题 by @fz6m in https://github.com/umijs/umi/pull/9380
    • 修复 乾坤插件对 rootElement 兜底 by @sorrycc in https://github.com/umijs/umi/pull/9414
    • 文档 新增 一个 mpa 实例 by @arvinxx in https://github.com/umijs/umi/pull/9368

    New Contributors

    • @notcold made their first contribution in https://github.com/umijs/umi/pull/9366

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.21...v4.0.22

    Source code(tar.gz)
    Source code(zip)
  • v4.0.21(Sep 15, 2022)

    What's Changed

    • 修复 client 产物对 < [email protected] 的兼容性 by @PeachScript
    • 修复 extraBabelIncludes 不兼容 tnpm 安装目录的问题 by @PeachScript in https://github.com/umijs/umi/pull/9310
    • 修复 generator 的 prompts 无法正确退出的问题 by @Binbiubiubiu in https://github.com/umijs/umi/pull/9302
    • 修复 routes 配置组件路径为绝对路径时不能正常解析的问题 by @fz6m in https://github.com/umijs/umi/pull/9303

    New Contributors

    • @wkeylin made their first contribution in https://github.com/umijs/umi/pull/9312
    • @Binbiubiubiu made their first contribution in https://github.com/umijs/umi/pull/9302
    • @2239559319 made their first contribution in https://github.com/umijs/umi/pull/9300

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.20...v4.0.21

    Source code(tar.gz)
    Source code(zip)
  • v4.0.20(Sep 13, 2022)

    What's Changed

    • 修复 history.pushhistory.replace 工作不正常的问题 by @fz6m in https://github.com/umijs/umi/pull/9296
    • 支持通过 DID_YOU_KNOW=none 环境变量禁用『你知道吗?』 by @sorrycc in https://github.com/umijs/umi/pull/9279

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.19...v4.0.20

    Source code(tar.gz)
    Source code(zip)
  • v4.0.19(Sep 8, 2022)

    What's Changed

    • 新增配置 historyWithQuery,兼容方案,非必要不使用 by @sorrycc in https://github.com/umijs/umi/pull/9277
    • 修复从 umi 中 import 的 history 的 location 不会更新的问题 by @sorrycc in https://github.com/umijs/umi/pull/9276
    • 修复 tsconfig.json 的文件 include 问题 by @ye-will in https://github.com/umijs/umi/pull/9275
    • 修复 layout 插件面包屑在设置 base 之后的跳转问题 by @wyy0512 in https://github.com/umijs/umi/pull/9173
    • 修复 tailwind 插件的 bin 路径问题 by @fz6m in https://github.com/umijs/umi/pull/9255

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.18...v4.0.19

    Source code(tar.gz)
    Source code(zip)
  • v4.0.18(Sep 7, 2022)

    What's Changed

    • 新增 reactRouter5Compat 配置,启用 react-router 5 兼容模式,缺点是会有额外的 re-render by @xierenyuan @sorrycc in https://github.com/umijs/umi/pull/9240 https://github.com/umijs/umi/pull/9251
    • 优化 layout 插件,默认使用 pro components by @chenshuai2144 in https://github.com/umijs/umi/pull/9085
    • 优化 vite 模式下 proxy 的行为,和 webpack 模式下保持一致 by @xierenyuan in https://github.com/umijs/umi/pull/9206
    • 修复 .umirc.ts 里 defineConfig 类型在 vscode 下不生效的问题 by @xiaohuoni in https://github.com/umijs/umi/pull/9246

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.17...v4.0.18

    Source code(tar.gz)
    Source code(zip)
  • v4.0.17(Sep 1, 2022)

    What's Changed

    • 优化 webpack 编译后产物,让 package.json 中有 version 属性 by @xierenyuan in https://github.com/umijs/umi/pull/9201
    • 修复 qiankun 插件判断 isMasterApp 的逻辑问题 by @liangskyli in https://github.com/umijs/umi/pull/9203

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.16...v4.0.17

    Source code(tar.gz)
    Source code(zip)
  • v4.0.16(Sep 1, 2022)

    What's Changed

    • 新增「你知道吗」贴士 by @sorrycc in https://github.com/umijs/umi/pull/9200
    • 优化约定式路由,支持约定的 404 文件 by @zenotsai in https://github.com/umijs/umi/pull/9145
    • 优化 qiankun 插件支持本地研发 by @HiLanXiao in https://github.com/umijs/umi/pull/8812
    • 优化 mpa 模式,默认使用 config.json 作为 entry 配置 by @sorrycc in https://github.com/umijs/umi/pull/9115
    • 优化 mpa 模式,支持通过 mpa.template 配置默认模板 by @sorrycc in https://github.com/umijs/umi/pull/9189
    • 优化 MFSU 的 eager 模式,让依赖构建跑在 worker 里 by @stormslowly in https://github.com/umijs/umi/pull/9087
    • 优化 run 命令,执行时支持参数 by @txp1035 in https://github.com/umijs/umi/pull/9175
    • 优化 test 命令,改进插件相关测试 by @stormslowly in https://github.com/umijs/umi/pull/9131
    • 优化 webpack hash 函数,使用 xxhash64 以提升性能 by @903040380 in https://github.com/umijs/umi/pull/9168
    • 修复 legacy 配置不应该 transform 补丁的问题 by @fz6m in https://github.com/umijs/umi/pull/9129
    • 修复 IBabelPlugin 类型定义 by @kingback in https://github.com/umijs/umi/pull/9133
    • 修复 run 命令的 tsx bin 路径查找失败问题 by @fz6m in https://github.com/umijs/umi/pull/9152
    • 修复 deadCode 功能 exclude 不工作的问题 by @fz6m in https://github.com/umijs/umi/pull/9155
    • 修复 proxy 配置的类型定义 by @PeachScript in https://github.com/umijs/umi/pull/9139
    • 修复 config 合并时可能意外修改了 defaultConfig 的问题 by @July-ing in https://github.com/umijs/umi/pull/9153
    • 修复 plugin-docs 插件的搜索问题 by @txp1035 in https://github.com/umijs/umi/pull/8926
    • 修复 plugin-docs 插件 classname 依赖丢失的问题 by @stormslowly in https://github.com/umijs/umi/pull/9180
    • 修复 lint,升级 typescript-eslint 以兼容 TypeScript 4.8 by @PeachScript in https://github.com/umijs/umi/pull/9181

    New Contributors

    • @HiLanXiao made their first contribution in https://github.com/umijs/umi/pull/8812
    • @903040380 made their first contribution in https://github.com/umijs/umi/pull/9168

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.15...v4.0.16

    Source code(tar.gz)
    Source code(zip)
  • v3.5.34(Sep 1, 2022)

  • v4.0.15(Aug 26, 2022)

    What's Changed

    • 回滚 UMI_ENV 不能使用 dev、build 和 test 的问题,因为 antdpro 用了 dev,影响面比较大 by @sorrycc in https://github.com/umijs/umi/pull/9105
    • 修复 umi-test 没有 transform 包含 jest.doMock 代码文件的问题 by @miracles1919 in https://github.com/umijs/umi/pull/9102

    New Contributors

    • @miracles1919 made their first contribution in https://github.com/umijs/umi/pull/9102

    Full Changelog: https://github.com/umijs/umi/compare/v4.0.14...v4.0.15

    Source code(tar.gz)
    Source code(zip)
Owner
UmiJS
Extensible enterprise-level front-end application framework.
UmiJS
A full-stack application for junior developers to find jobs that match their skill-level, find gigs in order to boost their resume, and showcase a portfolio.

Junior is a full-stack web application that was created to facilitate junior developers in finding jobs that match their skill-level, boosting their resume through finding and completing gigs, and providing a way to easily showcase a portfolio

Karolina 5 Oct 25, 2022
Full Application was developed on Next Level Week Return (#8) event by @Rocketseat

Layout • Technologies • Getting started • License ?? Layout You can view the project layout through the link below: Feedback Widget - Figma Rememberin

Elias Gabriel 14 Nov 1, 2022
🚀 Aplicação mobile com React Native produzida durante o Next Level Week #05

✨ Tecnologias Esse projeto foi desenvolvido com as seguintes tecnologias: React Native Typescript Expo ?? Projeto Aplicativo para lhe ajudar a lembrar

Danilo Alexandrino 11 May 28, 2022
A web application to search all the different countries in the world and get details about them which can include languages, currencies, population, domain e.t.c This application is built with CSS, React, Redux-Toolkit and React-Router.

A web application to search all the different countries in the world and get details about them which can include languages, currencies, population, domain e.t.c This application is built with CSS, React, Redux-Toolkit and React-Router. It also includes a theme switcher from light to dark mode.

Franklin Okolie 4 Jun 5, 2022
Read from an abstract-level database using Web Streams

level-web-stream Read from an abstract-level database using Web Streams. Compatible with browsers and Node.js. ?? To instead consume data using Node.j

Level 10 Dec 30, 2022
A web application which is a clone of Google keep. Made it by using react framework.

A web application which is a clone of Google keep. Made it by using react framework.

Shreya Christiana Malogi 13 Oct 30, 2022
Single Page Application with React, React Router, PostCSS, Webpack, Docker and Docker Compose.

spa-store Single Page Application with React, React Router, PostCSS, Webpack, Docker and Docker Compose. Contributing Feedback Roadmap Releases Check

Luis Falcon 2 Jul 4, 2022
Recoil is an experimental state management library for React apps. It provides several capabilities that are difficult to achieve with React alone, while being compatible with the newest features of React.

Recoil · Recoil is an experimental set of utilities for state management with React. Please see the website: https://recoiljs.org Installation The Rec

Facebook Experimental 18.2k Jan 8, 2023
This is a calculator application. The user can do some calculations on this application.

Math Magicians This is a calculator application. The user can do some calculations on this application. Built with: Reactjs Redux Live Live demo deplo

Firdavs Allamurotov 4 May 15, 2022
A web application for a company that provides commercial and scientific space travel services. The application allows users to book rockets and join selected space missions.

Space Travelers' Hub A web application for a company that provides commercial and scientific space travel services. The application allows users to bo

Manel Hammouche 8 Oct 14, 2022
The React Framework

Next.js Getting Started Visit https://nextjs.org/learn to get started with Next.js. Documentation Visit https://nextjs.org/docs to view the full docum

Vercel 98.2k Dec 26, 2022
A frontend Framework for building B2B applications running in the browser on top of REST/GraphQL APIs, using ES6, React and Material Design

react-admin A frontend Framework for building data-driven applications running in the browser on top of REST/GraphQL APIs, using ES6, React and Materi

marmelab 21.2k Dec 30, 2022
🌲 Evergreen React UI Framework by Segment

Works out of the box. Evergreen contains a set of polished React components that work out of the box. Flexible & composable. Evergreen components are

Segment 12k Dec 29, 2022
Mobile app development framework and SDK using HTML5 and JavaScript. Create beautiful and performant cross-platform mobile apps. Based on Web Components, and provides bindings for Angular 1, 2, React and Vue.js.

Onsen UI - Cross-Platform Hybrid App and PWA Framework Onsen UI is an open source framework that makes it easy to create native-feeling Progressive We

null 8.7k Jan 8, 2023
⚡️The Fullstack React Framework — built on Next.js

The Fullstack React Framework "Zero-API" Data Layer — Built on Next.js — Inspired by Ruby on Rails Read the Documentation “Zero-API” data layer lets y

⚡️Blitz 12.5k Jan 4, 2023
a react-based framework that provides accessibility, modularity, responsiveness, and theming in a tidy package

Grommet: focus on the essential experience Documentation Visit the Grommet website for more information. Support / Contributing Before opening an issu

grommet 8.1k Jan 5, 2023
Juka Official Website built on top of Docusaurus/React Framework. Help us make it better!

Juka Programming Language Juka Programming Language website is built on top of Docusaurus 2. Feel free to contribute to our website! Any help is appre

Juka Programming Language 5 Dec 24, 2022
The Tesla Clone built in React Native FrameWork

Tesla Clone The Tesla Clone built in React Native FrameWork Features Flat Infinite Scroll List View with animations. Design is responsive to different

LakhanKumawat ᵖ⁺ 2 Feb 10, 2022
A complete set up of the React application with Typescript, Webpack 5, Babel v7, SSR, Code Splitting and HMR.

Getting Started with react-final-boilerplate Clone the code npm install You are good to go with React Application. Open http://localhost:3000/ and you

null 24 Dec 22, 2022