我的应用程序有一个组件,该组件在某些页面的顶部创建导航栏。我想仅在用户当前登录时才显示"注销"按钮(本地存储中存储了一个令牌(。
当下面的代码运行时,浏览器给我以下错误:
引用错误: 找不到变量: 显示注销
import React from 'react'
import NavHelper from './components/nav-helper'
export default React.createClass({
render () {
return(
<NavHelper>
<nav className='top-nav top-nav-light cf' role='navigation'>
<input id='menu-toggle' className='menu-toggle' type='checkbox'/>
<label htmlFor='menu-toggle'>Menu</label>
<ul className='list-unstyled list-inline cf'>
<li><a href="/home">Website</a></li>
<li><a href='/languages'>Languages</a></li>
<li><a href='/topics'>Topics</a></li>
//==========================
{window.localStorage.token ? showLogout() : null}
//==========================
<li className='pull-right'><a href='/saved'>Saved</a></li>
</ul>
</nav>
<div className='container'>
{this.props.children}
</div>
</NavHelper>
)
},
showLogout() {
return (<li className='pull-right'><a href='/logout'>Logout</a></li>)
}
})
由于这是一个类,您应该引用如下内部函数: this.showLogout()