开源世界

Ant Design Pro 2.0 正式发布,企业级中后台解决方案

漂亮的实力派 Ant Design Pro 2.0 正式发布

1.0 发布之后,Ant Design Pro 受到了业界广泛关注和使用,GitHub 上 star 数一路增长到 11,686 个,在蚂蚁金服内部也落地数百个中后台应用。 在这 8 个月内,2.0 研发计划也在持续进行中,在给 V2 版本发起过 PR 的 38 位贡献者帮助下,经历了 600 个 commit,一次整体架构升级后,我们带来了全新的 Ant Design Pro 2.0。在这个版本中我们带来了四个全新的页面、多种布局方式来丰富 pro 的使用场景、脚手架从 roadhog 切换到了 umi2,并且加入了一个炫酷的设置抽屉。预览界面参见 https://preview.pro.ant.design 。

全新的页面

作为西湖区最具影响力 web 设计规范,优雅美观,精心设计的界面一直是我们主打优势。V2 中我们也带来了一系列界面更新与优化,引入四个新的界面:

  • 分步对话框

  • 信息录入对话框

  • 个人中心

  • 个人设置

新布局和主题

在 V2 中我们内置了多种布局方式,你可以通过简单配置组合出多种多样的界面来满足需求,总有一款适合你。为了方便大家更快看到效果,我们开发了一个炫酷的设置抽屉来进行主题和布局切换。确认效果后你可以拷贝设置,并且将其设置为默认,换主题 so easy,更重要的是全程都是在线,无需重启脚手架,立等可见。

 

⚡ 脚手架切换到 umi

 

umi 中文可发音为乌米,是一个可插拔的企业级 react 应用框架。umi 以路由为基础的,支持类 next.js 的约定式路由,以及各种进阶的路由功能,并以此进行功能扩展,比如支持路由级的按需加载。然后配以完善的插件体系,覆盖从源码到构建产物的每个生命周期,支持各种功能扩展和业务需求,目前内外部加起来已有 50+ 的插件。

umi 是蚂蚁金服的底层前端框架,已直接或间接地服务了数百个应用,包括 java、node、H5 无线、离线(Hybrid)应用、纯前端 assets 应用、CMS 应用等。它已经很好地服务了我们的内部用户,同时希望它也能服务好外部用户。

它包含以下特性:

  • 开箱即用,内置 react、react-router 等

  • 类 next.js 且功能完备的路由约定,同时支持配置的路由方式

  • 完善的插件体系,覆盖从源码到构建产物的每个生命周期

  • 高性能,通过插件支持 PWA、以路由为单元的 code splitting 等

  • 支持静态页面导出,适配各种环境,比如中台业务、无线业务、egg、支付宝钱包、云凤蝶等

  • 开发启动快,支持一键开启 dll 和 hard-source-webpack-plugin 等

  • 一键兼容到 IE9,基于 umi-plugin-polyfills

  • 完善的 TypeScript 支持,包括 d.ts 定义和 umi test

  • 与 dva 数据流的深入融合,支持 duck directory、model 的自动加载、code splitting 等等

支持组件按需加载

在 pro 中我们提供了一些封装更加高级的组件,在 V2 中我们还提供了按需加载功能,只要在 babel-plugin-import 做如下配置:

 {
    libraryName: 'ant-design-pro',
    libraryDirectory: 'lib',
    style: true,
    camel2DashComponentName: false,
  }

就可以像 antd 一样使用 pro 组件,我们强烈推荐这种方式,可以显著减少包大小。

import { Result } from 'ant-design-pro';

ReactDOM.render(<Result type="success" />, mountNode);

国际化最佳实践

V2 中提供了基于 umi-plugin-locale 的国际化最佳实践,只需要在 src/locales 中引入相应的 js,例如 en-US.js 和 zh-CN.js,然后我们就可以在代码中愉快的使用国际化的相关能力了。

import {
  formatMessage,
  setLocale,
  getLocale,
  FormattedMessage,
} from 'umi/locale';

export default () => {
  return <div><FormattedMessage id="test" /></div>
}

展望未来

在未来我们将持续关注 pro 的性能和易用性。并会和 umi 一起在组件物料化方面做一些探索,持续完善文档,降低大家使用成本。更加好看和好用会是我们一直的努力方向。

特别鸣谢

感谢所有提交错误、发起PR、回复问题、编写文档等的人!特别感谢以下几位社区小伙伴 @yoyo837 @xiaohuoni @zhangxiuling @kaoding ,以及为 V2 发起过 PR 的 38 位贡献者,你们的参与让 pro V2 的发布成为现实。

如果你在使用 Ant Design Pro 时遇到任何问题,可随时在 GitHub 提交问题

感谢你的阅读,敬请安装、尝试。

希望看到您的想法,请您发表评论x