react 中组件状态的一些理解

react 中组件状态的一些理解

组件状态:即 state

只有当state发生变化时,组件才会更新。

当一个html标签的值依赖于state的值得时候,如果state的值没有更新时,这个标签的值无论如何也是不会更新的。

看下面示例:

class Test extends React.Component{
            state = {
                name:'liu',
            }

            render(){
                const {name} = this.state
                console.log(name)
                return <input type="text" value={name} />
            }
 }

在这个例子中,input的值等于 state.name.

在浏览器中渲染这个组件。当向input框中输入内容时,无论怎么输入,input框中的内容始终是 “liu”

这就验证了一个理论:浏览器渲染的是真实DOM中的内容。由于state中的内容没变,所以虚拟DOM中的内容没有变化,因此真实DOM中的内容也不会变。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/2595.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • MobX学习之旅

    MobX学习之旅

  • vue生成二维码并保存图片_vue实现扫描二维码

    vue生成二维码并保存图片_vue实现扫描二维码一、生成简单的二维码(不带图片)1.引入插件npminstallqrcode–save2.页面中使用<divid=”qrcode”class=”erweima”></div>页面中引入importQRCodefrom”qrcodejs2″;methods:{qrcode(){this.$nextTick(()=>{letqrcode=newQRCode(“qrcode”,{

  • HTTPS和HTTP的区别是什么?

    HTTPS和HTTP的区别是什么?

    2021年10月14日
  • mariadb 的安装及基本配置

    mariadb 的安装及基本配置文章目录一、mariadb介绍二、mariadb下载及安装三、mariadb的启停命令四、mariadb的配置五、添加用户,设置权限Navicat连接数据库一、mariadb介绍MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎

  • 图片标注工具LabelImg使用教程[通俗易懂]

    图片标注工具LabelImg使用教程[通俗易懂]前言我们知道,图片标注主要是用来创建自己的数据集,方便进行深度学习训练。本篇博客将推荐一款十分好用的图片标注工具LabelImg,重点介绍其安装以及使用的过程。在此感谢原作者在github所做的贡献,这款工具是全图形界面,用Python和Qt写的,最牛的是其标注信息可以直接转化成为XML文件,与PASCALVOC以及ImageNet用的XML是一样的。Ubuntu源码安装由于Ubuntu系统自带p

  • 我学MSMQ(二)

    我学MSMQ(二)

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号