-
Notifications
You must be signed in to change notification settings - Fork 324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
发布 umi 2.0,可插拔的企业级 react 应用框架 #74
Labels
Comments
sorrycc
changed the title
发布 umi 2.0 —— 可插拔的企业级 react 应用框架
发布 umi 2.0,可插拔的企业级 react 应用框架
Sep 3, 2018
前排 + 1 |
mark |
d |
^_^ |
666 |
顶顶ヾ(@^▽^@)ノ |
+1 |
正在升级 |
正在用~~ |
适合需要做SEO的前端页面吗,还是仅适合做后台管理系统。 |
对里面的埋点方案想要了解,不知道哪里能看到细节吗? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
距离 umi 1.0 发布 已有半年,umi 在这段时间做了大量的重构和改进,438 个 commit,20 个 beta 版本,今天正式发布 2.0 版本,并调整定位为可插拔的企业级 react 应用框架。
umi 是什么?
umi,中文可发音为乌米,是一个可插拔的企业级 react 应用框架。umi 以路由为基础的,支持类 next.js 的约定式路由,以及各种进阶的路由功能,并以此进行功能扩展,比如支持路由级的按需加载。然后配以完善的插件体系,覆盖从源码到构建产物的每个生命周期,支持各种功能扩展和业务需求,目前内外部加起来已有 50+ 的插件。
umi 是蚂蚁金服的底层前端框架,已直接或间接地服务了 600+ 应用,包括 java、node、H5 无线、离线(Hybrid)应用、纯前端 assets 应用、CMS 应用等。他已经很好地服务了我们的内部用户,同时希望他也能服务好外部用户。
他包含以下特性:
2.0 有什么改进?
轻内核 + 新手友好
umi@1 内置了很多优化方案,比如按需编译、按需加载、eslint、pwa、antd 校验等等,这些方案能提升开发体验和运行效率,但同时也提升了入门 umi 的门槛。
所以 umi@2 默认关掉了很多优化方案:
然后把这些功能改由插件来实现,按需开启,以保证 umi 内核的轻量。同时,默认构建只产生 index.html、umi.js 和 umi.css,对新手来说部署更友好。
全新的插件机制
umi@1 的插件机制有点过于强大,什么都能做,什么都能改。所以 umi@2 重构了插件机制,做了很多约束,明确什么能做,什么不能做,并提供了一套更友好的插件 API。
同时,这套插件机制已在内部得以验证,由超过 30 个插件构成的非常优秀的内部框架 Bigfish 正在服务于蚂蚁金服,包含埋点、后端接入、性能、服务接入、权限等等。
umi-plugin-react
umi@1 的插件比较散,使用时通常需要安装多个插件,升级和使用都比较麻烦,所以我们提供了 umi-plugin-react。umi-plugin-react 是插件集,类似 babel 里 preset 的概念。
目前有内置了 13 个插件,包含:
详见:https://umijs.org/zh/plugin/umi-plugin-react.html
webpack@4 + babel@7 + ...
趁 umi@2 的机会,我们把主要依赖度升级到了最新,除了 webpack@4 和 babel@7,还有 less@3、postcss@7、typescript@3 等,以及带来相关的构建性能提升。
同时,我们用了 webpack-chain 来扩展 webpack 配置,这是相比之前的
webpack.config.js
更为稳妥的方案。比如:
umi generate
umi@2 支持
umi generate
(umi g
) 命令快速生成文件,同时
umi generate
是可被扩展的,比如 umi-plugin-dva 就基于此扩展了dva:model
等文件的快速生成。其他改进
.env
和.env.local
配置环境变量yaml
格式的注释扩展路由信息@
,指向 src 目录快速上手
入门 umi 很简单,
详见:https://umijs.org/zh/guide/getting-started.html,也可以观看 10 分钟入门 umi 视频版。
升级到 umi@2
目前,antd 社区的 antd-pro 和 antd-admin 都已升级到 umi@2,之前 umi@1 的项目可参考文档或视频进行升级。
社区
钉钉群
微信群
扫码加
UMI_HELPER
,回复umi
自动加群。最后
感谢所有参与贡献 umi 以及在项目中使用了 umi 的内外部同学。umi 才刚刚起步,很希望你能一起来完善他,我们 Github 见!👋
The text was updated successfully, but these errors were encountered: