import { defineConfig } from 'umi'; import { join } from 'path'; interface App { name: string; entry: string; } function defineApp(app: App) { //@ts-ignore // console.log('API_BASE_URL = ', API_BASE_URL); if (process.env.NODE_ENV === 'production') { let env = process.env.CONFIG_ENV; if (env === 'prod') { env = ''; } else { env = `-${env}`; } return { ...app, entry: `https://lins${env}.sensoro.com/${app.name}`, }; } else { return app; } } function defineApps(apps: App[] = []) { return apps.map(app => defineApp(app)); } export default defineConfig({ // define: { // BASE_URL: 'https://lins-dev1-api.sensoro.com', // }, // nodeModulesTransform: { // type: 'none', // }, theme: { 'primary-color': '#2B6DE5', }, devtool: 'source-map', base: '/launcher', publicPath: '/launcher/', runtimePublicPath: true, qiankun: { master: { // sandbox: true, // 注册子应用信息 apps: defineApps(require('./app.json') as []), }, }, hash: true, routes: [ { path: '/login', microApp: 'login', }, //lins暂时让他独立出来 { path: '/layout', microApp: 'layout', microAppProps: { autoSetLoading: false, }, }, { path: '/', // component: '@/loading', component: '@sensoro/layout/lib/layouts/console-layout', // wrappers: ['@/wrappers/auth'], navigations: require('./navigations.json'), viewMode: false, routes: [ { path: '/', redirect: '/console', }, { path: '/graph', microApp: 'graph', microAppProps: { autoSetLoading: false, }, }, { path: '/personnel-registration', microApp: 'personnel-registration', microAppProps: { autoSetLoading: false, }, }, { path: '/console', microApp: 'console', microAppProps: { autoSetLoading: false, }, }, ], }, ], extraBabelPlugins: [ [ 'import', { libraryName: '@sensoro/sensoro-design', libraryDirectory: 'es', style: true, }, ], ], plugins: [ join(__dirname, './plugins/api-url.ts'), join(__dirname, './plugins/open-proxy.ts'), ], });