我是初學者與反應,並嘗試設置路由反應路由器。從商店路由反應路由器
我有一個2.x版:
"react-router": "^2.0.0"
這是我routes.js文件:
import React from 'react';
import {Router, Route, browserHistory} from 'react-router';
import App from './components/App';
import Home from './components/Home';
import Login from './components/Login';
export default (
<Router history={browserHistory}>
<Route component={App}>
<Route path="/" name="home" component={Home}/>
<Route path="/login" component={Login}/>
</Route>
</Router>
);
我main.js文件看起來像這樣
import React from 'react';
import Router from 'react-router';
import ReactDOM from 'react-dom';
import { browserHistory } from 'react-router'
import routes from './routes';
ReactDOM.render(<Router history={browserHistory}>{routes}</Router>, document.getElementById('app'));
而且基本上我想要的是組件登錄,我有一個表單,在提交時,我使用LoginActions()中的login(),這是一些這樣的:
login(username,password){
$.ajax({
type: 'POST',
url: '/login',
data:{username:username,password:password}
})
.done((data) => {
console.log("action login success");
this.actions.loginSuccess(data);
})
.fail((jqXhr) => {
this.actions.loginFail(jqXhr.responseJSON.message);
});
}
,並在結束時,我想onLoginSuccess從組件登錄重定向到組件主頁(路徑:「/」)。
在這看似簡單的文件,但我一直在尋找TUTOS和網站在過去兩年的日子,我沒有什麼:)
任何幫助PLZ?另外,如果您發現任何不正確的內容,請隨時引導我。
感謝 我
謝謝,但我一直在嘗試這一點,並得到browserhistory是undefined。 – ilellouch
我有」未捕獲TypeError:無法讀取屬性'推'的未定義「我在哪裏在類中的函數中調用browserHistory.push('/')LoginStore – ilellouch
如果成功導入browserHistory,則無法定義browserHistory。是否確定某個地方沒有輸入錯別字? –