似乎应该这样,因为在组件内绝不能更改道具。我在Google或Stack Overflow上找不到任何答案,因此在这里只是为了确保即可。
答案 0 :(得分:2)
这不是Typescript的特异性,而是React的特异性。
React是根据一组道具渲染组件的设计。如果要更改组件的渲染方式,则父级需要生成新的道具并将其提供给子级。
React数据流是从父母到孩子的单向流。您不能也不想变异来自父母的道具。因为如果props可以被突变,它将在React组件的生命周期中产生UI问题。仅当其道具之一的引用发生更改时,组件才会重新渲染。对道具进行突变不会重新渲染组件,您的用户界面也会与数据不同。