0
我試圖在React應用程序中切換菜單的可見性。我試圖通過設置我點擊更改的狀態屬性。然後我檢查對象狀態以切換可見性。這是代碼:React - 切換不可用的元素的可見性
constructor(props) {
super(props);
this.state = {
'menuOpen': false,
}
}
openMenu() {
var newState = !this.state.menuOpen;
this.setState({
'menuOpen': newState
});
}
var menuList = React.createClass({
render: function() {
return (
<div className={styles.menuList}>
<ul>
<li>Link</li>
<li>Link</li>
<li>Link</li>
</ul>
</div>
);
}
});
render() {
return (
<div className={styles.menu}><span className={styles.menuIcon} onClick={this.openMenu.bind(this)} />
{this.state.menuOpen ? <menuList /> : null}
</div>
);
}
我得到一個錯誤:
> in ./src/components/post/index.js Module build failed: SyntaxError:
> Unexpected token (31:8)
>
> }
> var menuList = React.createClass({
> ^
我在做什麼錯?
嘗試使用大寫的第一個字母菜單列表 –
爲什麼在你的其他組件的類變量中定義你的菜單列表的組成部分?我敢肯定,ES6類聲明中只允許使用方法,而不是任意'var'聲明。嘗試將你的'menuList'組件移動到它自己的類聲明中。 – sbking