config.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /* eslint-disable react/destructuring-assignment */
  2. // https://umijs.org/config/
  3. const pageRoutes = require('./router.config');
  4. const path = require('path');
  5. export default {
  6. // add for transfer to umi
  7. plugins: [
  8. [
  9. 'umi-plugin-react',
  10. {
  11. dva: true,
  12. antd: true,
  13. locale: {
  14. default: 'zh-CN', // default zh-CN
  15. baseNavigator: true, // default true, when it is true, will use `navigator.language` overwrite default
  16. },
  17. },
  18. ],
  19. // TODO 决定是否使用约定路由,如果使用配置路由那么 umi-plugin-routes 可以去掉了
  20. // [
  21. // 'umi-plugin-routes',
  22. // {
  23. // exclude: [/\.test\.js/],
  24. // update(routes) {
  25. // return [...pageRoutes, ...routes];
  26. // },
  27. // },
  28. // ],
  29. ],
  30. // 路由配置
  31. routes: pageRoutes,
  32. theme: {
  33. 'card-actions-background': '#f5f8fa',
  34. },
  35. env: {
  36. development: {
  37. extraBabelPlugins: ['dva-hmr'],
  38. },
  39. },
  40. externals: {
  41. '@antv/data-set': 'DataSet',
  42. rollbar: 'rollbar',
  43. },
  44. alias: {
  45. components: path.resolve(__dirname, '../src/components/'),
  46. utils: path.resolve(__dirname, '../src/utils/'),
  47. assets: path.resolve(__dirname, '../src/assets/'),
  48. common: path.resolve(__dirname, '../src/common/'),
  49. },
  50. ignoreMomentLocale: true,
  51. lessLoaderOptions: {
  52. javascriptEnabled: true,
  53. },
  54. cssLoaderOptions: {
  55. modules: true,
  56. getLocalIdent: (context, localIdentName, localName) => {
  57. if (
  58. context.resourcePath.includes('node_modules') ||
  59. context.resourcePath.includes('ant.design.pro.less')
  60. ) {
  61. return localName;
  62. }
  63. const antdProPath = context.resourcePath.match(/src(.*)/)[1].replace('.less', '');
  64. const arr = antdProPath
  65. .split('/')
  66. .map(a => a.replace(/([A-Z])/g, '-$1'))
  67. .map(a => a.toLowerCase());
  68. return `antd-pro${arr.join('-')}-${localName}`.replace(/--/g, '-');
  69. },
  70. },
  71. manifest: {
  72. name: 'ant-design-pro',
  73. background_color: '#FFF',
  74. description: 'An out-of-box UI solution for enterprise applications as a React boilerplate.',
  75. display: 'standalone',
  76. start_url: '/index.html',
  77. icons: [
  78. {
  79. src: '/favicon.png',
  80. sizes: '48x48',
  81. type: 'image/png',
  82. },
  83. ],
  84. },
  85. };