ReactJS 和不变性

标签 reactjs immutability

我已经学习 ReactJS 一段时间了。让我困惑的一件事是为什么 ReactJS 在 prop、元素等许多方面都使用不变性。这有什么具体原因吗?这背后的哲学是什么?

当我尝试向 props 添加新属性时,出现以下错误。

未捕获类型错误:无法添加属性,对象不可扩展

最佳答案

这背后的原理是数据流的一种方式——数据向下流动(从顶层到叶组件),操作向上流动。

组件从 props 接收数据,并且要更改某些内容,它必须调用其父级并要求其更改某些内容 - 通常通过回调函数。

您可以在Thinking in React上阅读更多相关信息。官方网站的页面,它很好地解释了这个概念。

关于ReactJS 和不变性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38223306/

相关文章:

javascript - react : Why is my child component updating the state of its parent?

javascript - 如何使用 react js context api 正确存储和检索数据?我的代码没有按预期工作

node.js - 通过 package.json 脚本运行 Windows Comman_Prompt 命令

javascript - React/Redux 如何访问网络服务中的状态

java - 如何使 StringBuilder 表现得不可变

list - 当您将相互链接的对象影响到此列表时如何维护不可变列表

scala - 如何更新嵌套的不可变映射

javascript - React-file-viewer 将任何文件渲染得非常小

java - 如何使非原始类成员不可变

c# - 不可变类与结构