Commit dc85fd11444404db801a3bc2871b50f00baf64a5
1 parent
ed271b3f
feat: micro-app-template-stt-定制部门临时版本
Showing
14 changed files
with
202 additions
and
28 deletions
1 | 1 | import { defineConfig } from 'umi'; |
2 | 2 | |
3 | 3 | export default defineConfig({ |
4 | - runtimePublicPath: true | |
4 | + runtimePublicPath: true, | |
5 | + devServer: { | |
6 | + port: 5203, | |
7 | + proxy: { | |
8 | + dev: { | |
9 | + '/api/': { | |
10 | + target: 'https://preview.pro.ant.design', | |
11 | + changeOrigin: true, | |
12 | + pathRewrite: { '^': '' }, | |
13 | + }, | |
14 | + '/open/': { | |
15 | + target: 'https://test.qgutech.com', | |
16 | + changeOrigin: true, | |
17 | + }, | |
18 | + }, | |
19 | + test: { | |
20 | + '/api/': { | |
21 | + target: 'https://preview.pro.ant.design', | |
22 | + changeOrigin: true, | |
23 | + pathRewrite: { '^': '' }, | |
24 | + }, | |
25 | + }, | |
26 | + pre: { | |
27 | + '/api/': { | |
28 | + target: 'your pre url', | |
29 | + changeOrigin: true, | |
30 | + pathRewrite: { '^': '' }, | |
31 | + }, | |
32 | + }, | |
33 | + }, | |
34 | + }, | |
35 | + define: { | |
36 | + 'process.env.site': 'http://qx-test.qgutech.com', | |
37 | + // 'process.env.apiUrl': 'http://192.168.181.107/qgyun-api', | |
38 | + // 'process.env.apiUrl': 'http://192.168.1.180/qx-api', | |
39 | + 'process.env.apiUrl': 'http://test.qgutech.com/qx-api', | |
40 | + // 'process.env.apiUrl': 'https://qinggutest01.gifthulu.com/qx-api', | |
41 | + // 'process.env.apiUrl': 'https://uat.qgutech.com/qx-api', | |
42 | + 'process.env.openUrl': '/open', | |
43 | + } | |
5 | 44 | }); | ... | ... |
... | ... | @@ -5,7 +5,8 @@ |
5 | 5 | Install dependencies, |
6 | 6 | |
7 | 7 | ```bash |
8 | -$ pnpm i | |
8 | +$ pnpm i | |
9 | +$ npm i --force | |
9 | 10 | ``` |
10 | 11 | |
11 | 12 | Start the dev server, |
... | ... | @@ -13,3 +14,5 @@ Start the dev server, |
13 | 14 | ```bash |
14 | 15 | $ pnpm start |
15 | 16 | ``` |
17 | + | |
18 | +# (功能按钮带参数 是拼接在配置的链接 最后一个问号后面) 例如:_qx_flag、id | |
\ No newline at end of file | ... | ... |
... | ... | @@ -3,7 +3,7 @@ |
3 | 3 | "private": true, |
4 | 4 | "scripts": { |
5 | 5 | "analyze": "cross-env ANALYZE=1 qx-cli build", |
6 | - "start": "cross-env UMI_APP_ENV=dev qx-cli start", | |
6 | + "start": "cross-env SOCKET_SERVER=https://localhost:5203 HTTPS=1 umi dev", | |
7 | 7 | "start:test": "cross-env UMI_APP_ENV=test qx-cli start", |
8 | 8 | "start:pre": "cross-env UMI_APP_ENV=pre qx-cli start", |
9 | 9 | "build": "cross-env UMI_APP_ENV=prod qx-cli build", | ... | ... |
1 | -import React, { memo } from 'react'; | |
2 | -import { Button } from 'antd'; | |
3 | -import { useModel } from 'umi'; | |
1 | +import React, {memo, useEffect} from 'react'; | |
2 | +import {Button} from 'antd'; | |
3 | +import {useModel} from 'umi'; | |
4 | 4 | import styles from './styles.less'; |
5 | 5 | |
6 | 6 | const prefixCls = 'app-view'; |
7 | 7 | |
8 | 8 | const AppView: React.FC<AppViewProps> = (props) => { |
9 | - const { increment, decrement, counter } = useModel('count', (model) => model); | |
10 | - return ( | |
11 | - <div className={styles[prefixCls]}> | |
12 | - <p>{counter}</p> | |
13 | - <Button | |
14 | - className={styles[`${prefixCls}__button--primary`]} | |
15 | - onClick={() => increment()} | |
16 | - > | |
17 | - increment | |
18 | - </Button> | |
19 | - <Button onClick={() => decrement()}>decrement</Button> | |
20 | - </div> | |
21 | - ); | |
9 | + const {increment, decrement, counter} = useModel('count', (model) => model); | |
10 | + | |
11 | + return ( | |
12 | + <div className={styles[prefixCls]}> | |
13 | + <p>{counter}</p> | |
14 | + <Button | |
15 | + className={styles[`${prefixCls}__button--primary`]} | |
16 | + onClick={() => increment()} | |
17 | + > | |
18 | + increment | |
19 | + </Button> | |
20 | + <Button onClick={() => decrement()}>decrement</Button> | |
21 | + </div> | |
22 | + ); | |
22 | 23 | }; |
23 | 24 | |
24 | -interface AppViewProps {} | |
25 | +interface AppViewProps { | |
26 | +} | |
25 | 27 | |
26 | 28 | export default memo(AppView); | ... | ... |
src/pages/details/test/index.tsx
0 → 100644
1 | +import React, {memo, useEffect} from 'react'; | |
2 | +import { Space } from 'antd'; | |
3 | +import styles from './styles.less'; | |
4 | + | |
5 | +const prefixCls = 'details-test-view'; | |
6 | + | |
7 | +const DetailsTestView: React.FC<DetailsTestViewProps> = (props) => { | |
8 | + | |
9 | + | |
10 | + return ( | |
11 | + <div className={styles[prefixCls]}> | |
12 | + <Space direction="vertical" size={20}> | |
13 | + details-test | |
14 | + </Space> | |
15 | + </div> | |
16 | + ); | |
17 | +}; | |
18 | + | |
19 | +interface DetailsTestViewProps {} | |
20 | + | |
21 | +export default memo(DetailsTestView); | ... | ... |
src/pages/details/test/styles.less
0 → 100644
src/pages/test/index.tsx
0 → 100644
1 | +import React, {memo, useEffect} from 'react'; | |
2 | +import { Space } from 'antd'; | |
3 | +import styles from './styles.less'; | |
4 | +import {getPage} from "./services"; | |
5 | + | |
6 | +const prefixCls = 'test-view'; | |
7 | + | |
8 | +const TestView: React.FC<AppViewProps> = (props) => { | |
9 | + // 测试 stt-测试应用-测试百分比组件表单 | |
10 | + const appCode = 'nv32y'; | |
11 | + const funCode = '0rra0'; | |
12 | + const viewCode = 'all'; | |
13 | + const moduleData = | |
14 | + // @ts-ignore | |
15 | + window?.parent?.qx?.getModuleData()?.menus || | |
16 | + // @ts-ignore | |
17 | + window?.qx?.getModuleData()?.menus || | |
18 | + []; | |
19 | + const appId = | |
20 | + moduleData?.find((obj: any) => obj?.appCode === appCode)?.appId || ''; | |
21 | + | |
22 | + useEffect(() => { | |
23 | + const _params = { | |
24 | + appId: appId, | |
25 | + _code: `${appCode}_index_app`, | |
26 | + viewType: 'list', | |
27 | + viewCode: 'all', | |
28 | + _$search_: true, | |
29 | + _filter: '', | |
30 | + _include: true, | |
31 | + collapseStatus: true, | |
32 | + pageSize: 10, | |
33 | + }; | |
34 | + getPage(appCode, funCode, viewCode, _params) | |
35 | + .then((res: any) => { | |
36 | + console.log('res', res) | |
37 | + }) | |
38 | + .catch((e: any) => { | |
39 | + console.log('e', e) | |
40 | + }); | |
41 | + }, []) | |
42 | + | |
43 | + return ( | |
44 | + <div className={styles[prefixCls]}> | |
45 | + <Space direction="vertical" size={20}> | |
46 | + test | |
47 | + </Space> | |
48 | + </div> | |
49 | + ); | |
50 | +}; | |
51 | + | |
52 | +interface AppViewProps {} | |
53 | + | |
54 | +export default memo(TestView); | ... | ... |
src/pages/test/services.ts
0 → 100644
1 | +import request from '@/utils/request'; | |
2 | + | |
3 | +/** | |
4 | + * 分页接口 | |
5 | + * @param appCode | |
6 | + * @param funCode | |
7 | + * @param viewCode | |
8 | + * @param params | |
9 | + * @param headers | |
10 | + */ | |
11 | +export function getPage( | |
12 | + appCode: string, | |
13 | + funCode: string, | |
14 | + viewCode: string, | |
15 | + params: any, | |
16 | +) { | |
17 | + return request.get( | |
18 | + `/qx-apaas-lowcode/runtime/${appCode}/${funCode}/${viewCode}/page`, | |
19 | + { | |
20 | + params: params || {}, | |
21 | + autoShowError: true, | |
22 | + useCancel: true, | |
23 | + }, | |
24 | + ); | |
25 | +} | ... | ... |
src/pages/test/styles.less
0 → 100644
1 | +/** | |
2 | + * 功能按钮打开的页面,放入pages/details下面 | |
3 | + * 左侧菜单,自定义页面,放入pages/page-view下面 | |
4 | + * 自定义页面path需要加 /:appCode/ | |
5 | + * **/ | |
1 | 6 | export default [ |
2 | 7 | { |
3 | - path: '/view', | |
8 | + path: '/', | |
9 | + redirect: '/details/testDetail', | |
10 | + }, | |
11 | + { | |
12 | + path: '/:appCode/test', | |
13 | + component: '@/pages/test', | |
14 | + layout: true, | |
15 | + }, | |
16 | + { | |
17 | + path: '/:appCode/view', | |
4 | 18 | component: '@/pages/app-view', |
5 | 19 | layout: true, |
6 | 20 | }, |
21 | + { | |
22 | + path: '/details/testDetail', | |
23 | + component: '@/pages/details/test', | |
24 | + layout: true, | |
25 | + }, | |
7 | 26 | ]; | ... | ... |