From b9899bc032ff635f6dae85d3b6624c4a2cf26d24 Mon Sep 17 00:00:00 2001 From: Pavel Gnedov Date: Mon, 3 Jul 2023 08:06:01 +0700 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B2=20react=20=D0=BF=D1=80=D0=B8=D0=BB=D0=BE?= =?UTF-8?q?=D0=B6=D0=B5=D0=BD=D0=B8=D0=B8=20=D0=BF=D1=80=D0=BE=D1=84=D0=B8?= =?UTF-8?q?=D0=BB=D0=B5=D0=B9=20=D0=B4=D0=BB=D1=8F=20=D1=80=D0=B0=D0=B7?= =?UTF-8?q?=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=BA=D0=B8=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=B4=D0=B0=D0=BA=D1=88=D0=B5=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - для разработки включен hotreload - на бакенде включен CORS --- frontend/.env.development | 1 + frontend/.env.production | 1 + frontend/src/issues-list-board/store.ts | 2 +- frontend/src/kanban-board/kanban-boards.tsx | 2 +- frontend/src/kanban-board/store.ts | 2 +- frontend/src/misc-components/issue-details-dialog.tsx | 2 +- frontend/src/utils/service-actions.ts | 2 +- src/main.ts | 2 ++ 8 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 frontend/.env.development create mode 100644 frontend/.env.production diff --git a/frontend/.env.development b/frontend/.env.development new file mode 100644 index 0000000..9ac4f5e --- /dev/null +++ b/frontend/.env.development @@ -0,0 +1 @@ +REACT_APP_BACKEND=http://localhost:3001/ \ No newline at end of file diff --git a/frontend/.env.production b/frontend/.env.production new file mode 100644 index 0000000..e12c5b1 --- /dev/null +++ b/frontend/.env.production @@ -0,0 +1 @@ +REACT_APP_BACKEND=/ \ No newline at end of file diff --git a/frontend/src/issues-list-board/store.ts b/frontend/src/issues-list-board/store.ts index 8353f42..2442ebf 100644 --- a/frontend/src/issues-list-board/store.ts +++ b/frontend/src/issues-list-board/store.ts @@ -61,7 +61,7 @@ export const PageStore = types.model({ }); export async function PageStoreLoadData(store: IPageStore): Promise { - const url = `/simple-kanban-board/${store.type}/${store.name}/raw`; + const url = `${process.env.REACT_APP_BACKEND}simple-kanban-board/${store.type}/${store.name}/raw`; const resp = await axios.get(url); if (!(resp?.data)) return; diff --git a/frontend/src/kanban-board/kanban-boards.tsx b/frontend/src/kanban-board/kanban-boards.tsx index aa2448b..b019b0f 100644 --- a/frontend/src/kanban-board/kanban-boards.tsx +++ b/frontend/src/kanban-board/kanban-boards.tsx @@ -34,7 +34,7 @@ export const KanbanBoards = observer((props: Props) => { const onTreeRefreshClick = (e: React.MouseEvent) => { if (e.target !== e.currentTarget) return; e.stopPropagation(); - axios.get(`/simple-kanban-board/tree/${props.store.name}/refresh`); + axios.get(`${process.env.REACT_APP_BACKEND}simple-kanban-board/tree/${props.store.name}/refresh`); } treeRefreshMenuItem = ; } diff --git a/frontend/src/kanban-board/store.ts b/frontend/src/kanban-board/store.ts index 2152511..1a16812 100644 --- a/frontend/src/kanban-board/store.ts +++ b/frontend/src/kanban-board/store.ts @@ -86,7 +86,7 @@ export const PageStore = types.model({ }); export async function PageStoreLoadData(store: IPageStore): Promise { - const url = `/simple-kanban-board/${store.type}/${store.name}/raw`; + const url = `${process.env.REACT_APP_BACKEND}simple-kanban-board/${store.type}/${store.name}/raw`; const resp = await axios.get(url); if (!(resp?.data)) return; store.setData(resp.data); diff --git a/frontend/src/misc-components/issue-details-dialog.tsx b/frontend/src/misc-components/issue-details-dialog.tsx index e30cecd..3a95e10 100644 --- a/frontend/src/misc-components/issue-details-dialog.tsx +++ b/frontend/src/misc-components/issue-details-dialog.tsx @@ -43,7 +43,7 @@ export type Props = { export const IssueDetailsDialog = observer((props: Props): JSX.Element => { const onUpdateClick = (e: React.MouseEvent) => { - const url = `/redmine-event-emitter/append-issues`; + const url = `${process.env.REACT_APP_BACKEND}redmine-event-emitter/append-issues`; axios.post(url, [props.store.issue.id]); }; const onCloseClick = (e: React.MouseEvent) => { diff --git a/frontend/src/utils/service-actions.ts b/frontend/src/utils/service-actions.ts index 0fb2a32..0c2f950 100644 --- a/frontend/src/utils/service-actions.ts +++ b/frontend/src/utils/service-actions.ts @@ -14,7 +14,7 @@ export const onIssuesRefreshClick = (e: React.MouseEvent) => { export const onGetIssuesQueueSizeClick = async (e: React.MouseEvent): Promise => { if (e.target !== e.currentTarget) return; e.stopPropagation(); - const resp = await axios.get(`/redmine-event-emitter/get-issues-queue-size`); + const resp = await axios.get(`${process.env.REACT_APP_BACKEND}redmine-event-emitter/get-issues-queue-size`); console.debug(`resp -`, resp); // DEBUG if (!resp || typeof resp.data !== 'number') return; alert(`Issues queue size - ${resp.data}`); diff --git a/src/main.ts b/src/main.ts index 18ef801..f47265e 100644 --- a/src/main.ts +++ b/src/main.ts @@ -12,6 +12,8 @@ async function bootstrap() { logger: ['debug', 'error', 'warn', 'log', 'verbose'], }); + app.enableCors(); + app.setBaseViewsDir(join(__dirname, '..', 'views')); app.setViewEngine('hbs');