update
This commit is contained in:
@@ -12,15 +12,17 @@
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@3rapp/common": "workspace:*",
|
||||
"@3rapp/api": "workspace:*",
|
||||
"@ant-design/cssinjs": "^1.20.0",
|
||||
"antd": "^5.17.0",
|
||||
"axios": "^1.6.8",
|
||||
"deepmerge": "^4.3.1",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@3rapp/code-config": "workspace:*",
|
||||
"@3rapp/utils": "workspace:*",
|
||||
"@types/node": "^20.12.10",
|
||||
"@types/react": "^18.2.66",
|
||||
"@types/react-dom": "^18.2.22",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { pathResolve } from '@3rapp/utils';
|
||||
import { pathResolve } from '@3rapp/common';
|
||||
import merge from 'deepmerge';
|
||||
import { ConfigEnv, UserConfig } from 'vite';
|
||||
|
||||
@@ -19,6 +19,16 @@ export const createConfig = (params: ConfigEnv, configure?: Configure): UserConf
|
||||
localsConvention: 'camelCaseOnly',
|
||||
},
|
||||
},
|
||||
server: {
|
||||
proxy: {
|
||||
'/api': {
|
||||
target: 'http://localhost:3001/api',
|
||||
changeOrigin: true,
|
||||
rewrite: (path) => path.replace(/^\/api/, ''),
|
||||
},
|
||||
},
|
||||
cors: true,
|
||||
},
|
||||
plugins: createPlugins(isBuild),
|
||||
},
|
||||
typeof configure === 'function' ? configure(params, isBuild) : {},
|
||||
|
||||
+26
-1
@@ -1,15 +1,34 @@
|
||||
// src/app.tsx
|
||||
|
||||
import { PostEntity } from '@3rapp/api/modules/content/entities/post.entity';
|
||||
import { StyleProvider } from '@ant-design/cssinjs';
|
||||
import { Button, ConfigProvider, theme, App as AntdApp } from 'antd';
|
||||
// import 'dayjs/locale/zh-cn';
|
||||
import zhCN from 'antd/locale/zh_CN';
|
||||
|
||||
import { FC } from 'react';
|
||||
import axios from 'axios';
|
||||
import { FC, useEffect, useState } from 'react';
|
||||
|
||||
import $styles from './app.module.css';
|
||||
|
||||
const getPosts = async () => {
|
||||
let data: PostEntity[] = [];
|
||||
try {
|
||||
const res = await axios.get('/api/posts');
|
||||
data = res.data;
|
||||
} catch (err) {
|
||||
console.log('Error:', err);
|
||||
}
|
||||
return data;
|
||||
};
|
||||
|
||||
const App: FC = () => {
|
||||
const [data, setData] = useState<PostEntity[]>([]);
|
||||
useEffect(() => {
|
||||
(async () => {
|
||||
setData(await getPosts());
|
||||
})();
|
||||
}, []);
|
||||
return (
|
||||
<ConfigProvider
|
||||
locale={zhCN}
|
||||
@@ -38,6 +57,12 @@ const App: FC = () => {
|
||||
>
|
||||
点此打开
|
||||
</Button>
|
||||
<h2>文章列表</h2>
|
||||
<ul>
|
||||
{data.map((item) => (
|
||||
<li key={item.id}>{item.title}</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</AntdApp>
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
export interface Post {
|
||||
title: string;
|
||||
body: string;
|
||||
}
|
||||
Reference in New Issue
Block a user