Как сделать реакцию-маршрутизатор в приложении электродов в файле действия
У меня есть приложение реакции, использующее структуру электрода walmart с использованием маршрутизатора реакции. Мой вопрос
а) как протолкнуть маршрут во время действия триггера? Я попытался импортировать push из реакции-маршрутизатора, но я получил ошибку метода не найдена. Вместо этого я попытался использовать browserHistory.push, и он устанавливает URL-адрес, но по какой-то причине логин отображается только в /#/login?_K =jazzx, а не в /login.
б) как я могу получить URL-адреса /resoure, а не хеш-адреса # / ресурса. Это одностраничное приложение. Я понимаю, что он делает это, потому что это одностраничное приложение, но есть ли настройки для этого? Какая лучшая практика?
c) Какова строка запроса, которую электрод прикрепляет к вещам - только для dev?
export const tryLogin = (returnUrl = '/') => {
return (dispatch) => {
browserHistory.push('/login'); //this doesn't seem to render the route /#/login_k=somestring does work
return dispatch(createLoginAction({ returnUrl }));
};
}
;
1 ответ
URL /#/login?_k=jazzx
подразумевает, что вы используете историю хеширования, но пытаетесь изменить URL с помощью browserHistory
, Вы должны проходить browserHistory
на ваш <Router>
если вы хотите использовать API истории браузера (иначе есть чистые URL).
Если вы используете browserHistory
вам понадобится какой-то код на вашем сервере для обработки маршрутизации.