组件不是从映射状态呈现的

贪婪94

我想通过“板”进行映射并创建足够数量的“单元”组件,因为“板”很长。

这是代码:

function Grid({ player }) {
  const [board, boardSet] = useState([11, 2, 3]);
  const [cellsFill, cellsFillSet] = useState([
    [0, 1, 2],
    [3, 4, 5],
    [6, 7, 8],
    [0, 4, 8],
    [2, 4, 6],
    [0, 3, 6],
    [1, 4, 7],
    [2, 5, 8],
  ]);
  return (
    <section className="grid">
      {board &&
        board.map((el) => {
          return <Cell player={player} cellFillSet={boardSet}></Cell>;
        })}
    </section>
  );
}

当我在通过“board”映射时尝试使用 console.log 时,我得到了很好的数字,但仍然没有出现“Cell”。

PS:我现在关于将密钥添加到列表中,为了清除它被删除

编辑:问题出在“Cell”组件内:

function Cell({ player, cellFillSet }) {
  const [filled, filledSet] = useState(null);
  const fill = async () => {
    turnSet((prev) => prev + 1);
  };
  useEffect(() => {
    cellFillSet(filled); //heres a problem, should be cellFillSet([filled])
  }, [filled]);
  return (
    <div className="cell" onClick={fill}>
      {filled}
    </div>
  );
}
马吉德 M。

尝试这个 :

 function Grid({ player }) {
  const [board, boardSet] = useState([11, 2, 3]);
  const createCellComponent = () =>
  { 
    if(board)
        return board.map((el) => {
            return <Cell player={player} cellFillSet={boardSet}></Cell>;
        })
  } 
  return (
    <section className="grid">
      {createCellComponent()}
    </section>
  );
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

酶使包裹的组件而不是基础组件呈现

反应按原样呈现的映射状态文本

递归映射嵌套 JSON 但组件不呈现

功能组件在状态更改时重新呈现

反应组件中的状态不会呈现

React 中有没有办法将组件呈现为不是其初始状态的 HTML?

映射状态时如何重新呈现复选框状态

如何呈现反应导航而不是组件?

状态更改后父组件中的子组件重新呈现

将状态映射到组件中的反应

映射状态数组不返回组件(ReactJS)

如何从反应映射组件更新状态

Chakra Card 组件是垂直而不是水平映射

如何更改useState的状态而无需重新呈现组件,而仅重新呈现其组件

React Function组件使用变量(不是状态)

页脚在导航栏和组件之间呈现,而不是在 React-Redux 中的组件之后呈现

React - Redux 状态更新但未在组件中呈现

React:子组件未在父状态更改时呈现

子组件在每个状态更改时都重新呈现

状态更改后,react-redux组件未重新呈现

状态更改时,React组件不会重新呈现

React组件不会在状态更改时重新呈现

父状态更改时如何防止子组件重新呈现

状态更新后不重新呈现表组件

呈现无状态组件时出错:“找不到变量:React”

ReactJS:操纵状态无法正确呈现子组件

使用useLocalStorage时,本地状态不会重新呈现组件

当 REST api 返回错误状态时呈现不同的组件

reactjs表示组件在redux状态更改时未重新呈现