当存储在useContext更新中的对象时,DOM不会重新渲染



我正在编写一个基本上是一个游戏的应用程序。有关游戏的信息存储在包装整个应用程序的上下文提供程序中。我已经为游戏对象编写了原型方法,并在 react 应用程序中调用它们,但更改没有显示在页面上。

const onDeckEl = useRef(null) 
useEffect(() => {
let onDeck = round.getOnDeck()
onDeckEl.current = onDeck
console.log(onDeckEl)
}, [round])

我可以在开发工具中看到圆形对象中数组的值在我想要时更改,但控制台.log永远不会触发。有人可以解释为什么吗?

console.log不触发的最可能原因是round变量没有改变。代码:

useEffect(() => {
console.log('Effect!');
}, [round])

除非round变量发生变化,否则不会触发。

相关内容

  • 没有找到相关文章

最新更新