这是一个非常奇怪的错误,我无法弄清。
onSizeChange(e) {
// const newSize = 24;
const newSize = e.target.value;
console.log('onSizeChange', newSize);
// IsValid makes sure the value is an even number
const isValid = newSize % 2 === 0 && newSize > 0;
console.log(isValid);
const newMatrix = Array(newSize).fill().map(() => Array(newSize).fill(0));
console.log(newMatrix);
当我登录newSize时,我得到了期望的结果。即8.当我登录isValid时,我应该做的时候为真。但是当我登录newMatrix时,无论newSize是什么,输出都好像newSize为null。问题不在于Array(newSize).fill()。map(()=> Array(newSize).fill(0));因为当我取消注释第一行并注释第二行时,它工作正常。
<div className="Buttons">
<label>
Board Size (Even Numbers Only)
<input type="number" name="inputBoardSize" onChange={(e) => this.onSizeChange(e)} />
</label>
</div>
Jsx供参考