我有一个主要的应用程序(棋盘游戏) 打开大堂课程(显示可用的游戏) 从那里你可以打开一个游戏桌
打开一个新表我执行以下操作:
set theBatchString "5+10;"
set d [exec maxima --batch-string=$theBatchString]
puts $d
我如何将这些参数提供给这个新创建的类(有想法它不起作用;也没有抱怨!!!!)
然后为渲染我这样做:
var newTable = new GameTable(operationId, tableId, instanceId);
var {gametables} = this.state;
gametables.push(newTable);
this.setState({gametables});
但在这里我提供了#34; GameTable"这不是我创建的课程,但是当我提供" item"时它不起作用。没有游戏桌。
javascript曾经如此简单:(
答案 0 :(得分:0)
const tables = this.state.gametables.map((table, i) => {
return ({table});
});
render方法包含JSX代码。尝试将上面的代码移动到辅助函数并从render方法中调用它。
此外,您的逻辑应该在辅助函数中,而不是在JSX中。
在类组件中放置一个辅助函数
renderTable(){
const tables = this.state.gametables.map((table, i) => {
return ({table});
});
}
然后在你的jsx电话里面
{this.renderTable}
完整代码:
renderTable(){
const tables = this.state.gametables.map((table, i) => {
return ({table});
});
}
renderView(){
const clientLoginState = this.state.clientLoginState;
return (
{clientLoginState === 2 ?
(
<div>
<Lobby requestOpenTable={this.requestOpenTable}>
</Lobby>
{this.state.gametables.map((item, index) => (
<div className='table' key={index} ><GameTable sendTableMessage={this.sendTableMessage.bind(this)}/></div>
))}
</div>
)
:
(
<Login loginState={clientLoginState} sendLogin={this.sendLogin} />
)
}
);
}
render() {
return (
<div style={styleApp()} onContextMenu={this.onContextMenu} >
{this.renderView}
</div>
<div>{this.renderTable}</div>
)
}