## 简介
umi,中文可发音为乌米,是一个可插拔的企业级 react 应用框架。umi 以路由为基础的,支持[类 next.js 的约定式路由](https://umijs.org/zh/guide/router.html),以及各种进阶的路由功能,并以此进行功能扩展,比如[支持路由级的按需加载](https://umijs.org/zh/plugin/umi-plugin-react.html#dynamicimport)。然后配以完善的[插件体系](https://umijs.org/zh/plugin/),覆盖从源码到构建产物的每个生命周期,支持各种功能扩展和业务需求,目前内外部加起来已有 50+ 的插件。
umi 是蚂蚁金服的底层前端框架,已直接或间接地服务了 600+ 应用,包括 java、node、H5 无线、离线(Hybrid)应用、纯前端 assets 应用、CMS 应用等。他已经很好地服务了我们的内部用户,同时希望他也能服务好外部用户。
## 特性
* 📦**开箱即用**,内置 react、react-router 等
* 🏈**类 next.js 且[功能完备](https://umijs.org/zh/guide/router.html)的路由约定**,同时支持配置的路由方式
* 🎉**完善的插件体系**,覆盖从源码到构建产物的每个生命周期
* 🚀**高性能**,通过插件支持 PWA、以路由为单元的 code splitting 等
* 💈**支持静态页面导出**,适配各种环境,比如中台业务、无线业务、[egg](https://github.com/eggjs/egg)、支付宝钱包、云凤蝶等
* 🚄**开发启动快**,支持一键开启[dll](https://umijs.org/zh/plugin/umi-plugin-react.html#dll)和[hard-source-webpack-plugin](https://umijs.org/zh/plugin/umi-plugin-react.html#hardSource)等
* 🐠**一键兼容到 IE9**,基于[umi-plugin-polyfills](https://umijs.org/zh/plugin/umi-plugin-react.html#polyfills)
* 🍁**完善的 TypeScript 支持**,包括 d.ts 定义和 umi test
* 🌴**与[dva](https://dvajs.com/)数据流的深入融合**,支持 duck directory、model 的自动加载、code splitting 等等
## 学习资料
UmiJS文档:https://umijs.org/zh/guide/