javascript - 状态改变时不重新渲染
问题描述
我需要很酷的红色秒单元格。但是我变蓝了,我做错了什么?
我有一个功能,检查防止单元格,并标记单元格。
AI_CELL = 红色
HIGHLIGHT_CELL = 蓝色
USER_CELL = 绿色
const checkWinnerScore = () => {
let [y, x] = prevCell;
let copyCells = JSON.parse(JSON.stringify(cells));
if (copyCells[y][x] === HIGHLIGHT_CELL) {
// I assign value, but cell do not coolerd in red.
copyCells[y][x] = AI_CELL;
setCells(copyCells);
setAiScore(aiScore + 1);
} else if (copyCells[y][x] === AI_CELL) {
return;
}
};
代码沙箱中的完整示例:https://codesandbox.io/s/vigilant-gates-zfcmm?file=/src/components/Cells.js: 2098-2430
解决方案
推荐阅读
- php - 连接到 Amazon RDS 后 Mysql 创建表时出错
- php - php Cookies 不会在某些页面上重置
- git - Git Pulling commits 在不同的机器上重置
- wordpress - 媒体查询 - 在 Edge/IE 中不起作用
- sql - 在 SQL 中构建基于月份的数据
- r - 从矩阵制作 3D 图
- haskell - Haskell中scanl和scanr的递归定义
- r - R - ggplot2 - Visualize deviations from base model
- java - 一些消息已被简化;使用 -Xdiags:verbose 重新编译以获得完整输出?
- swift - 从嵌入式命令行工具访问共享钥匙串数据