我希望你们都做得很好。我有一个问题,当一个列表中的组件的属性改变时,它们不会重新呈现。
setTestFs([...testFs, <TestFunction t={test}/>])
这是用于将组件分配给列表的行。每个组件都使用test作为其't'属性。
function RenderTestFunctions({ts}) {
return (
ts.map((e, index) => {
return (
<div key={index}>
{e}
</div>
)
})
)
}
function TestFunction({t}) {
console.log('just rendered + ' + t)
return (
<h1>{t}</h1>
)
}
RenderTestFunctions会呈现所有TestFunction组件。
由于某种原因,每当我更新测试值时,没有一个组件重新呈现,即使RenderTestFunctions确实呈现了。有人知道当一个道具改变时,我如何重新呈现列表中的所有组件吗?
- 请询问您是否需要任何说明。感谢您抽出时间查看此问题!*
1条答案
按热度按时间gorkyyrv1#
你可以使用useEffect钩子,它的主要目的是解决问题,并在注意到任何变化时执行操作。你可以像这样使用-
在使用效果时,数组可以帮助触发特定的函数。而在箭头函数中,你可以创建自己的函数。如果你还面临着只是告诉我,我会帮助你更多。谢谢