[react] 为什么说React中的props是只读的?

React 组件都必须像纯函数一样保护它们的 props 不被更改。

将react组件理解成纯函数,数据流驱动,参数传入不允许做更改

扩展 :

state内容可以更改,但是不允许直接赋值,需要借助setState

props用于定义外部接口,state用于记录内部状态

props的赋值在于外部世界使用组件,state的赋值在于组件内部

组件不应该改变props的值,而state存在的目的就是让组件来修改的

state 只能在constructor中设置默认值

setState修改state的值是异步的

个人简介

我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论

主目录

与歌谣一起通关前端面试题

[react] 为什么说React中的props是只读的?相关推荐

  1. [react] React中验证props的目的是什么?

    [react] React中验证props的目的是什么? 对属性进行强检验,避免运行时报错 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定很酷.欢迎大家一起讨论 主目录 与歌谣一起通 ...

  2. 彻底理解react中的props

    每天对自己多问几个为什么,总是有着想象不到的收获. 一个菜鸟小白的成长之路(copyer) ​在react中 state 和 props是两个非常重要的属性,并且常用的属性.简单来说:都是用来保存数据 ...

  3. 明明两次返回的组件中的props不一致,为什么dom不重新渲染(react相关)

    主要问题是 父组件通过props 传值后子组件不会重新渲染 <MetalTypeInfo id={this.state.id} /> //id 修改后不会重新渲染<MetalType ...

  4. React router 的 Route 中 component 和 render 属性理解

    React router 的 Route 中 component 和 render 属性理解 Route 标签的三个互斥属性 render.component.children Route 就是用来匹 ...

  5. 这就是为什么我们需要在React的类组件中绑定事件处理程序

    by Saurabh Misra 索拉·米斯拉(Saurabh Misra) 这就是为什么我们需要在React的类组件中绑定事件处理程序 (This is why we need to bind ev ...

  6. React组件常用设计模式之Render Props

    自己在总结最近半年的React开发最佳实践时,提到了Render Props,想好好写写,但感觉篇幅又太长,所以就有了此文.愿你看完,能有所收获,如果有什么不足或错误之处还请指正.文中所提到的所有代码 ...

  7. react组件放在数组中_为什么要在函数组件中使用React.memo?

    这里提一下,如果大家看到这个标题有所疑惑的话,可以花点时间看一下本篇文章.反之呢如果是看到标题第一时间就反映出结论的话,就可以去get其他文章的知识点了 那么接下来就不废话了,直接长刀直入,进入正题! ...

  8. react 子组件ref_React中Ref 的使用方法详解

    本文实例讲述了React中Ref 的使用方法.分享给大家供大家参考,具体如下: React中Ref 的使用 React v16.6.3 在典型的React数据流中,props是父组件与其子组件交互的唯 ...

  9. 从 0 到 1 实现 React 系列 —— 2.组件和 state|props

    看源码一个痛处是会陷进理不顺主干的困局中,本系列文章在实现一个 (x)react 的同时理顺 React 框架的主干内容(JSX/虚拟DOM/组件/生命周期/diff算法/setState/ref/. ...

最新文章

  1. VMware虚拟机搭MAC系统
  2. Vware Workstation pro 12|虚拟机
  3. 1.3.2 中断和异常(内中断和外中断、中断处理过程)
  4. Android开机自启监听网络改变源码
  5. oracle数据库重建em,oracle 11g em重建报唯一约束错误解决方法
  6. 用css和jquery实现标签页效果(一)
  7. CentOS 6.3 配置 yum
  8. 第三周作业之效能分析
  9. mybatis-plus关联查询,一对一、一对多。
  10. 浏览器兼容性及调试插件
  11. Java 基础实验 自由落体
  12. 12306火车票查询--python
  13. 【iOS】—— Foundation框架(二)- 数组(NSArray与NSMutableArray)
  14. 姜小白的Python日记Day14 系统模块详解1 time模块和random模块
  15. PowerBuilder 部署iis报错:IIS is not acessblee Please check the server address and port number.
  16. 高防IP有什么优势?
  17. 你真的了解你的显示器吗?(科普显示器知识,如何选购显示器)
  18. 运行期间动态切换Redis数据库
  19. python中使用python-dotenv管理环境变量
  20. jsp_02JSP隐含对象

热门文章

  1. leetcode 1030. 距离顺序排列矩阵单元格(bfs)
  2. leetcode 844. 比较含退格的字符串
  3. leetcode1276. 不浪费原料的汉堡制作方案(贪心)
  4. vim ctrlp_使用Ctrlp和Ctag使Vim更智能
  5. 有没有编码的知识图谱_没有人告诉您关于学习编码的知识-以及为什么如此困难...
  6. 监督学习-KNN最邻近分类算法
  7. Vmware 安装虚拟工具 (二)
  8. 20175223 MySQL
  9. React学习笔记(持续更新)
  10. NGINX + TOMCAT7 + MEMCACHED 实现SESSION 共享