我正在尝试使用react创建rails app。我使用了devise gem进行用户管理。我可以登录,但登录后我想更改登录链接登录链接。 以下是我的尝试:
这是根页面的html.erb文件:
<%= react_component('HomeApp', props: {data: @contact_form_props}) %>
这是包含标题链接的文件:
const HeaderApp = (props, _railsContext) => {
const reactComponent = (
<nav id="mainNav" className="navbar navbar-default navbar-custom navbar-fixed-top faq-container">
<div className="container">
<div className="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<div>
<ul className="nav navbar-nav navbar-right">
<li>
<Link href={this.props.path} to="">Login</Link>
</li>
</ul>
</div>
</div>
</div>
</nav>
);
return reactComponent;
};
登录后希望将登录链接转换为注销。谁能帮我吗。提前谢谢。
答案 0 :(得分:1)
使它像过去的ERB或HAML那样只是过去的用户状态道具 我希望这可以帮到你。
= react_component('Header',{data:@contact_form_props,userSignedIn:user_signed_in?})
{
this.props.userSignedIn ?
<Link href={this.props.logoutPath} to="">Logout</Link>
:
<Link href={this.props.loginPath} to="">Login</Link>
}