Commit c8bd356b authored by 前端-许佳敏's avatar 前端-许佳敏

新增script用于获取全局配置

parent 97ae9dd3
......@@ -22,3 +22,4 @@
# mockStatic
/.idea
config/base.config.json
{
"global": {
"logo": "http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/logo.png",
"countryList": [
"userRegister": {
"useType": {
"memberType": [],
"businessType": []
},
"useDetail": [
{
"name": "简体中文-ZH",
"key": "cn",
"icon": "http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/china.png"
"groupName": "企业组",
"elements": [
{
"id": 2,
"fieldName": "company",
"fieldCNName": "企业",
"fieldType": null,
"fieldLength": 10,
"fieldEmpty": 0,
"fieldOrder": 1,
"fieldRemark": "test",
"checkRules": []
}
]
},
{
"name": "English-EN",
"key": "en",
"icon": "http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/us.png"
},
{
"name": "日本語-JP",
"key": "jp",
"icon": "http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/japen.png"
},
{
"name": "한국어-KO",
"key": "ko",
"icon": "http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/koren.png"
"groupName": "444",
"elements": [
{
"id": 1,
"fieldName": "444",
"fieldCNName": "44",
"fieldType": null,
"fieldLength": 44,
"fieldEmpty": 1,
"fieldOrder": 44,
"fieldRemark": null,
"checkRules": []
}
]
}
]
}
......
......@@ -27,7 +27,7 @@
"@umijs/preset-react": "1.x",
"@umijs/test": "^3.2.0",
"bizcharts": "^4.0.7",
"god": "0.1.0",
"god": "0.1.11",
"lint-staged": "^10.0.7",
"mobx": "^5.15.4",
"mobx-react": "^6.2.2",
......@@ -43,6 +43,7 @@
"@types/qrcode": "^1.3.4",
"axios": "^0.19.2",
"chalk": "^4.1.0",
"clone": "^2.1.2",
"fs-extra": "^9.0.1",
"gulp": "^4.0.2",
"json2ts": "^0.0.7",
......
......@@ -2,7 +2,7 @@ const path = require('path')
const Logs = require('./utils/log')
const fse = require('fs-extra')
const Type = require('./utils/type')
const fetchConfig = require('../demo').fetchConfig
const fetchConfig = require('./services').fetchConfig
const gulp = require('gulp')
const json2ts = require('json2ts')
......@@ -56,5 +56,5 @@ function genarateDtsFile(json, done) {
*/
async function getAsyncConfig(done) {
const data = await fetchConfig()
genarateBaseJson(data.data, done)
genarateBaseJson(data, done)
}
\ No newline at end of file
/**
* 用于在项目开始前获取所有的配置
* 在项目开始前运行`yarn scripts:build`
* @todo 缺少异常处理清空
* @author xjm
*/
const Axios = require('axios').default;
const deepClone = require('clone')
const axios = Axios.create({
baseURL: 'http://10.0.0.25:8100',
responseType: 'json',
})
const serviceConfig = {
// 用于注册页
userRegister: {
useType: {
url: '/member/menu/register/type',
method: 'get'
},
useDetail: {
url: '/member/menu/register/detail',
method: 'get'
}
}
}
// 批量组装接口
async function batchAxiosHttps() {
const asyncHttpQueue = deepClone(serviceConfig)
for (const item in serviceConfig) {
for (const subItem in serviceConfig[item]) {
const data = await axios(serviceConfig[item][subItem])
asyncHttpQueue[item][subItem] = data.data.data
}
}
return asyncHttpQueue
}
exports.fetchConfig = batchAxiosHttps
\ No newline at end of file
......@@ -4,7 +4,7 @@ import styles from './index.less'
export interface TextLinkProps {
url: string,
}
const TextLink:React.FC<TextLinkProps> = (props) => {
const TextLink:React.FC<any> = (props) => {
return (
<span className={styles.link}>
{props.children}
......
export interface CountryList {
name: string;
key: string;
icon: string;
export interface UseType {
memberType: any[];
businessType: any[];
}
export interface Global {
logo: string;
countryList: CountryList[];
export interface Element {
id: number;
fieldName: string;
fieldCNName: string;
fieldType?: any;
fieldLength: number;
fieldEmpty: number;
fieldOrder: number;
fieldRemark: string;
checkRules: any[];
}
export interface UseDetail {
groupName: string;
elements: Element[];
}
export interface UserRegister {
useType: UseType;
useDetail: UseDetail[];
}
export interface RootObject {
global: Global;
userRegister: UserRegister;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment