【发布时间】:2016-07-26 05:34:01
【问题描述】:
我是 React 的初学者,并尝试使用 react-router 设置路由。
我有一个 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 从组件 Login 重定向到组件 Home(路径:'/')。
纸上看起来很简单,但我这两天一直在看tutos和网站,我什么都没有:)
有什么帮助吗?另外,如果您发现我显示的内容不正确,请随时指导我。
谢谢 我
【问题讨论】:
标签: javascript node.js reactjs react-router