我是React的新手,所以我想了解这一切是如何协同工作的。
在从节点服务器获取状态200之后,有没有办法更改为另一个组件呈现的组件?
例如。我正在通过注册页面向我的节点执行POST http请求到Express服务器。服务器响应json对象到我的前端。现在我想要呈现配置文件组件/页面而不是留在注册页面。这允许我使用Json数据并在配置文件页面上呈现它。这可能吗?如果您有其他选择,我也愿意接受建议。
谢谢大家。
注意: 我正在使用react路由器来控制不同的路由。 我的节点服务器设置了护照以处理单身。
答案 0 :(得分:0)
了解其概念将使您明白此事。
然后,转到Redux的高级主题,您将了解异步请求如何与Redux组件交互 - (http://redux.js.org/docs/advanced/
希望这有帮助。
答案 1 :(得分:0)
您基本上需要管理应用程序的状态(用户已连接/未连接)。然后,您可以将页面包装在管理用户连接或未连接的组件中。
假设您在登录成功时将user_is_logged设置为true。你可以这样做:
var PageWrapper = React.createClass({
render : function() {
// user_is_logged is true if user is correctly logged
// LoginPage is the authentication form
var pageContent = user_is_logged ? this.props.children : <LoginPage />;
return (
<div>
<Menu />
<div className="container">
{pageContent}
</div>
</div>
);
},
});
var MyPage = React.createClass({
render : function() {
return (
<PageWrapper>
<div>content of page...</div>
</PageWrapper>
);
},
});
并在ajax回调中重新渲染页面:
ReactDOM.render (<MyPage />, document.getElementById('my-app'));
它也适用于React路由器。