我嘗試在ReactJS tutorial Tic-tac-toe game中完成額外的練習。ReactJS中的兩個循環代替硬編碼
現在我有這樣的代碼:
class Board extends React.Component {
renderSquare(i) {
return (
<Square
value={this.props.squares[i]}
onClick={() => this.props.onClick(i)}
/>
);
}
render() {
return (
<div>
<div className="board-row">
{this.renderSquare(0)}
{this.renderSquare(1)}
{this.renderSquare(2)}
</div>
<div className="board-row">
{this.renderSquare(3)}
{this.renderSquare(4)}
{this.renderSquare(5)}
</div>
<div className="board-row">
{this.renderSquare(6)}
{this.renderSquare(7)}
{this.renderSquare(8)}
</div>
</div>
);
}
}
而是硬編碼{this.renderSquare(x)}
9次,我想有兩個迴路來替代它們或使用map(map())
。但是,我寫的所有內容都比硬編碼更糟糕。這是一個更好的方式來做到這一點,並避免硬編碼?
看看[問]。什麼'看起來更糟糕'?情況如何更糟?它不起作用嗎?等編輯你的問題來相應地闡明。還有https://codereview.stackexchange.com這可能是這類問題的更好場所。 – pvg
看起來很好,因爲它是。 –
您是否發現以下任何答案有用?如果是,請考慮對其進行投票並「接受」解決問題的人(如果有的話)。 – Chris