//状态不要直接修改,比如:// 错的,这样写不会重新渲染组件
this.state.comment = 'Hello';//修改状态正确的方式
this.setState({comment:'Hello'});setState方法的参数可以接受一个对象,也可以接受一个回调函数,状态的修改可能是异步的,所以当你修改的状态需要依赖状态本身或者props的值的时候,不要用上面的方式,而是传递一个方法,比如://假如组件有这样一个状态 this.state = {count:0};
this.setState((prevState,props) =>({count:prevState.count + props.num}))//当setState的参数是回调函数的时候,它接受两个参数,第一个是组件的上一个状态对象,第二个是组件的props对象

//组件可以将状态作为属性传递给子组件<Demo message={this.state.comment} />

//状态只能定义在construtor构造函数里面

转载于:https://www.cnblogs.com/toward-the-sun/p/7845197.html

react学习笔记2之正确使用状态相关推荐

  1. React学习笔记(五) 状态提升

    状态提升究竟是什么东西呢?别急,下面让我们一步一步来看看究竟要怎么使用状态提升 假设我们有这样一个需求,提供两个输入框(分别属于两个组件),保证输入框里面的内容同步 好,下面我们先来封装一个输入框组件 ...

  2. react学习笔记1--基础知识

    什么是react A JAVASCRIPT LIBRARY FOR BUILDING USER INTERFACES[React是一个用于构建用户界面的JavaScript库.] React之所以快, ...

  3. react render没更新_web前端教程分享React学习笔记(一)

    web前端教程分享React学习笔记(一),React的起源和发展:React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写 ...

  4. react组件卸载调用的方法_好程序员web前端培训分享React学习笔记(三)

    好程序员web前端培训分享React学习笔记(三),组件的生命周期 React中组件也有生命周期,也就是说也有很多钩子函数供我们使用, 组件的生命周期,我们会分为四个阶段,初始化.运行中.销毁.错误处 ...

  5. Redis运维和开发学习笔记(6) 监控Redis工作状态-info命令

    Redis运维和开发学习笔记(6) 监控Redis工作状态-info命令 文章目录 Redis运维和开发学习笔记(6) 监控Redis工作状态-info命令 info server info clie ...

  6. React学习笔记:入门案例

    React学习笔记:入门案例 React 起源于 Facebook 内部项目,因为市场上所有 JavaScript MVC 框架都不令人满意,公司就决定自己写一套,用来架设 Instagram 的网站 ...

  7. React学习笔记 - 组件Props

    React Learn Note 4 React学习笔记(四) 标签(空格分隔): React JavaScript 三.组件&Props 组件可以将UI切分成一些独立的.可复用的部件,这样你 ...

  8. React学习笔记(上)

    一.React文件的创建(不使用脚手架进行文件的创建过程) 1.1.这里的React文件是一个html文件,或者是一个js文件,需要安转相关依赖 React:是React的核心包 React-dom: ...

  9. React学习笔记八-受控与非受控组件

    此文章是本人在学习React的时候,写下的学习笔记,在此纪录和分享.此为第八篇,主要介绍非受控组件与受控组件. 目录 1.非受控组件 1.1表单提交案例 1.2案例的总结 2.受控组件 2.1受控组件 ...

最新文章

  1. 有时抄个1000词,有时自己发挥,新研究揭示GPT到底是怎么写作文的
  2. springboot核心原理
  3. 延边大学c语言题库,延边大学-SPOC官方网站
  4. 运维更简单、更智能,让运维人不再 “拼命”
  5. c++ 三次多项式拟合_线性回归进阶版,多项式线性回归讲解与实现(附完整代码)...
  6. 盲人编程_帮助盲人学习编码
  7. 分享|涨薪必备的Python接口自动化测试资源技能一键get
  8. linux 连接两个异构网,用cheops-ng管理Linux异构网络(图)
  9. 410. 分割数组的最大值
  10. aws lambda_AWS API Gateway和AWS Lambda示例
  11. 解决win7 svchost占用CPU过高的问题
  12. Python期末考试-中心点问题
  13. tradeblazer mysql_交易开拓者(TradeBlazer)上手指南
  14. php如何在微信公众号项目中,跳转到公众号关注页面
  15. 关于硬盘分区(主分区、扩展分区和逻辑分区)
  16. C#实践——计算GPA
  17. 简易移动端爬虫实现pixabay网站图片搜索
  18. 中学计算机教材,人教版初中信息技术教材梳理
  19. 个人开发与日常使用装机必备软件、常用配置
  20. 360周鸿祎:没有人比我更懂互联网安全

热门文章

  1. C#坏习惯:通过不好的例子学习如何制作好的代码——第1部分
  2. 16c语言第七届省赛,第十二届全国青少年信息学奥林匹克联赛初赛试题及答案普及组、C语言...
  3. 基于matlab的车牌定位算法设计与实现,matlab车牌定位系统设计(源码+文档)
  4. php中padding,css中padding填充详解
  5. 将三角形绕点b顺时针旋转90度_模型 | 图形旋转与翻折题型汇编
  6. shell中正则表达式详解_Shell if中的正则表达式使用详解
  7. mysql怎么换引擎_如何更换MySQL默认存储引擎
  8. html 的css骚操作,意想不到的 CSS 伪元素 before/after 各种骚操作 - 文章教程
  9. mysql远程访问权限_MYSQL开启远程访问权限的方法
  10. oracle的服務監聽器,Oracle监听器和服务名的配置