Я пытаюсь сделать маршрут маршрута Reacti динамическим c, и для этого мне нужно отправить переменную clickedSubprojectName
моим маршрутам. js.
прямо сейчас мои routes.js
взгляды как это:
import React from 'react';
const Projects = React.lazy(() => import('./views/Projects'));
const Subproject= React.lazy(() => import('./views/Subproject'));
const routes = [
{ path: '/projects', exact: true, name: 'Projects', component: Projects },
{ path: "/projects/subprojects", name: 'Subproject', component: Subproject},
];
export default routes;
В моем Projects.js
я создал state variable
, который сохраняет имя подпроекта, на котором пользователь щелкнул. И я хочу передать эту переменную из моего класса Projects в мои маршруты. js, чтобы я мог установить путь в маршрутах, например, так:
{ path: "/projects/"+clickedSubprojectName, name: 'Subproject', component: Subproject}
У меня есть Я уже пытался экспортировать постоянную переменную из моего Projects.js
следующим образом:
export const clickedSubprojectName={
clickedSubprojectName: this.state.clickedSubprojectName}
, а затем импортировал import { clickedSubprojectName} from './views/Subproject'
в мои маршруты. js, но на самом деле это не работает. Это устанавливает clickedSubprojectName в качестве значения по умолчанию для переменной состояния при первом отображении компонента Projects и не обновляется при изменении переменной состояния.
Надеюсь, у кого-нибудь есть решение этой проблемы, потому что я еще ничего не нашел в stackoverflow
Спасибо