Я не знаю, особенно, если это проблема с реактивным маршрутизатором, у которой есть проблема с вложенным маршрутом или даже проблема с данными. Я взламываю изоморфное одностраничное приложение с реагирующим флюсом и узлом/выражением, и у меня возникают проблемы с пониманием того, почему иногда на моих/отчетах и /reports/: маршрутах id он не выплюнет никаких данных/или пустой массив, если я цикл через множество маршрутов (например, перемещение вперед и назад между/отчетами и каждым другим /reports/: id, в конце концов один из них будет плюнуть неопределенным (любой случайный в тот момент), и когда я вернусь на свою панель инструментов, а затем на мои данные (/reports) его все пустое. Если я нажму обновление, он скажет ожидание localhost... навсегда (например, 1 min+, который вечно в сети), а затем мне придется перезапустить сервер.
Мои маршруты:
<Route>
<Route name ="dash" path="/dashboard" handler={App}>
<Route name ="dashboard" path="/dashboard" handler={Dashboard}/>
<Route name ="assignReport" path="/user" handler={AssignReport}/>
<Route name ="assignReported" path="/user/:id" handler={AssignReported}/>
<Route name ="employees" path="/employees" handler={Employees}/>
<Route name ="reports" path="/reports" handler={Report}/>
<Route name ="singlereports" path="/reports/:id" handler={ReportView}/>
<Route name ="addsubreport" path="/reports/:id/addsubreport" handler={AddSubreport}/>
<Route name ="editreports" path="/reports/:id/edit" handler={EditReport}/>
<Route name ="MyEmployees" path="/MEmployees" handler={MyEmployees}/>
<Route name ="AllEmployees" path="/AEmployees" handler={AllEmployees}/>
<Route name ="Profile" path="/profile" handler={Profile}/>
<Route name ="reportstocomplete" path="/reportsc" handler={ReportsToComplete}/>
<Route name ="addReport" path="/addReport" handler={AddReports}/>
<Route name ="readme" path="/readme" handler={Readme}/>
<Route name ="statistics" path="/statistics" handler={Stats}/>
<Route name ="signup" path="/signup" handler={Signup} />
<Route name ="login" path="/" handler={Login} />
<Route name ="newreport" path="/newreport" handler={NewReport}/>
<Route name ="templatereport" path="/templatereport" handler={TemplateReport}/>
</Route>
</Route>
EDIT: Я понимаю, что это, вероятно, не проблема маршрутизации, но, скорее всего, проблема ajax. Я могу загружать асинхронные данные слишком медленно. Я хватаю каждый документ путем поиска по имени пользователя, а не по идентификатору, который может иметь место. Есть предположения?
EDIT: это может быть даже не проблема ajax, проблема не возникает в IE, я могу обновлять и получать данные снова и снова, но у нее есть проблемы с POST-данными в IE. На хроме он скажет, ожидая localhost... некоторое время.
EDIT: я могу спамить маршруты на firefox, и он всегда будет работать нормально. Это не работает нормально, когда я набираю localhost: 3000 в браузере, поэтому ввод в IP позволяет ему работать (127.0.0.1); Выполняя то же самое для хром, я все равно получаю неопределенный и застрял на локальном хосте после связки спама (10-20 маршрутных спамов (щелчок назад и вперед/вверх вправо и налево слева)
Если вы используете вложенную маршрутизацию, вы должны использовать маршрут в качестве родителя. как
<Route name=parent handler={Report}>
<Route name=child handler={ReportChild}/>
</Route>
<Route path="/" handler={Index}>
перед всеми другими вашими маршрутами, тогда внутри этого компонента Index вы помещаете свой<RouteHandler/>
это будет означать, что все ваши компоненты будут отображаться внутри Index в зависимости от того, что путь, по которому вы находитесь. если вы хотите, чтобы логин был по умолчанию. add<DefaultRoute name="login" handler={Login}/>
надеюсь, это поможет!