You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

342 lines
8.2 KiB

// https://umijs.org/config/
import { defineConfig } from 'umi';
import { join } from 'path';
import defaultSettings from './defaultSettings';
import proxy from './proxy';
const { REACT_APP_ENV } = process.env;
export default defineConfig({
history: {
type: 'hash'
},
hash: true,
antd: {},
dva: {
hmr: true,
},
layout: {
// https://umijs.org/zh-CN/plugins/plugin-layout
locale: true,
siderWidth: 208,
...defaultSettings,
},
// https://umijs.org/zh-CN/plugins/plugin-locale
locale: {
// default zh-CN
default: 'zh-CN',
antd: true,
// default true, when it is true, will use `navigator.language` overwrite default
baseNavigator: true,
},
dynamicImport: {
loading: '@ant-design/pro-layout/es/PageLoading',
},
targets: {
ie: 11,
},
// umi routes: https://umijs.org/docs/routing
routes: [
{
path: '/user',
layout: false,
routes: [
{
path: '/user/login',
layout: false,
name: 'login',
component: './user/Login',
},
{
path: '/user',
redirect: '/user/login',
},
{
name: 'register-result',
icon: 'smile',
path: '/user/register-result',
component: './user/register-result',
},
{
name: 'register',
icon: 'smile',
path: '/user/register',
component: './user/register',
},
{
component: '404',
},
],
},
{
path: '/dashboard',
name: '生涯课程中心',
icon: 'home',
component: './dashboard/analysis',
},
{
path: '/course',
icon: 'table',
name: '课程管理',
routes: [
{
path: '/course',
redirect: '/course/subject',
},
{
name: '主题设置',
icon: 'smile',
path: '/course/subject',
component: './course/subject',
},
{
name: '新建主题',
icon: 'smile',
path: '/course/subject/step/update/',
component: './course/subject/step',
hideInMenu: true,
},
{
name: '编辑主题',
icon: 'smile',
path: '/course/subject/step/update/:id',
component: './course/subject/step',
hideInMenu: true,
},
{
name: '编辑主题',
icon: 'smile',
path: '/course/subject/step/create',
component: './course/subject/step',
hideInMenu: true,
},
{
name: '课程设置',
icon: 'smile',
path: '/course/option',
component: './course/option',
},
],
},
{
path: '/training',
icon: 'table',
name: '培训管理',
component: './training/option',
},
{
path: '/questionbank',
icon: 'table',
name: '题库维护',
routes: [
{
path: '/questionbank',
redirect: '/questionbank/normal',
},
{
name: '常规题库维护',
icon: 'smile',
path: '/questionbank/normal',
component: './questionbank',
},
{
name: '资质考试题库维护',
icon: 'smile',
path: '/questionbank/attestation',
component: './questionbank',
},
],
},
{
path: '/examinationrules',
icon: 'table',
name: '考试规则维护',
routes: [
{
name: '模拟考试规则设置',
icon: 'smile',
path: '/examinationrules/normal',
component: './examinationrules/normal',
},
{
name: '创建模拟考试规则',
icon: 'smile',
path: '/examinationrules/normal/step',
component: './examinationrules/normal/step',
hideInMenu: true,
},
{
name: '编辑模拟考试规则',
icon: 'smile',
path: '/examinationrules/normal/step/:id',
component: './examinationrules/normal/step',
hideInMenu: true,
},
{
name: '资质考试规则设置',
icon: 'smile',
path: '/examinationrules/attestation',
component: './examinationrules/attestation',
},
{
name: '创建资质考试规则维护',
icon: 'smile',
path: '/examinationrules/attestation/step',
component: './examinationrules/attestation/step',
hideInMenu: true,
},
{
name: '修改资质考试规则维护',
icon: 'smile',
path: '/examinationrules/attestation/step/:id',
component: './examinationrules/attestation/step',
hideInMenu: true,
},
],
},
{
path: '/examination',
name: '考试管理',
icon: 'profile',
routes: [
{
name: '考试维护',
path: '/examination/option',
component: './examination/option',
},
{
name: '报名管理',
icon: 'smile',
path: '/examination/option/registration/:id',
component: './examination/registration',
hideInMenu: true,
},
{
name: '制证管理',
icon: 'smile',
path: '/examination/certificate',
component: './examination/certificate',
},
{
name: '制证名单',
icon: 'smile',
hideInMenu: true,
path: '/examination/certificate/person/:id/:accreditation_status/:name',
component: './examination/certificate/person',
},
],
},
{
icon: 'table',
name: '生涯考试历史',
path: '/history/analysis',
component: './history/analysis',
},
{
path: '/demo',
icon: 'table',
name: 'demo',
component: './demo',
hideInMenu: true,
},
{
name: 'exception',
icon: 'warning',
path: '/exception',
hideInMenu: true,
routes: [
{
path: '/exception',
redirect: '/exception/403',
},
{
name: '403',
icon: 'smile',
path: '/exception/403',
component: './exception/403',
},
{
name: '404',
icon: 'smile',
path: '/exception/404',
component: './exception/404',
},
{
name: '500',
icon: 'smile',
path: '/exception/500',
component: './exception/500',
},
],
},
{
name: '账号信息',
icon: 'user',
path: '/account',
hideInMenu: true,
routes: [
{
path: '/account',
redirect: '/account/center',
},
{
name: '个人中心',
icon: 'smile',
path: '/account/center',
component: './account/center',
},
{
name: '个人设置',
icon: 'smile',
path: '/account/settings',
component: './account/settings',
},
],
},
{
path: '/',
redirect: '/dashboard',
},
{
component: '404',
},
],
// Theme for antd: https://ant.design/docs/react/customize-theme-cn
theme: {
'primary-color': defaultSettings.primaryColor,
'primary-color-hover': defaultSettings.primaryColor,
},
// esbuild is father build tools
// https://umijs.org/plugins/plugin-esbuild
esbuild: {},
title: false,
ignoreMomentLocale: true,
proxy: proxy[REACT_APP_ENV || 'dev'],
base: '/',
publicPath: './', // 发布路径采用相对地址
manifest: {
basePath: './',
},
// Fast Refresh 热更新
fastRefresh: {},
openAPI: [
{
requestLibPath: "import { request } from 'umi'",
// 或者使用在线的版本
// schemaPath: "https://gw.alipayobjects.com/os/antfincdn/M%24jrzTTYJN/oneapi.json"
schemaPath: join(__dirname, 'oneapi.json'),
mock: false,
},
{
requestLibPath: "import { request } from 'umi'",
schemaPath: 'https://gw.alipayobjects.com/os/antfincdn/CA1dOm%2631B/openapi.json',
projectName: 'swagger',
},
],
nodeModulesTransform: {
type: 'none',
},
mfsu: {},
webpack5: {},
exportStatic: {},
});