React-组件Props和State的区别

简介: React-组件Props和State的区别

props 和 state 的区别


props 和 state 都是用来存储数据的


  • props 存储的是父组件传递归来的数据
  • state 存储的是自己的数据
  • props 是只读的, 也就是说只可以进行使用,不可以进行修改
import React from 'react';
class Home extends React.Component {
    constructor(props) {
        super(props);
        this.state = {
            age: 18
        }
    }
    render() {
        return (
            <div>
                <p>{this.props.name}</p>
                <p>{this.state.age}</p>
                <button onClick={() => {
                    this.btnClick();
                }}>Home按钮
                </button>
            </div>
        )
    }
    btnClick() {
        this.props.name = '小灰灰';
    }
}
class App extends React.Component {
    render() {
        return (
            <div>
                <Home name={'yangbuyiya'}/>
            </div>
        )
    }
}
export default App;

  • state 是可读可写的,如果直接修改是不会触发页面的更新的
btnClick() {
    this.state.age = 666;
    console.log(this.state.age);
}


  • 如果想触发页面的更新得要通过 setState 进行设置
btnClick() {
    this.setState({
        age: 666
    });
}

官方文档:



最后


本期结束咱们下次再见👋~

🌊 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。大家点赞支持一下哟~ 💗

相关文章
|
4月前
|
缓存 前端开发 数据安全/隐私保护
如何使用组合组件和高阶组件实现复杂的 React 应用程序?
如何使用组合组件和高阶组件实现复杂的 React 应用程序?
211 68
|
4月前
|
缓存 前端开发 Java
在 React 中,组合组件和高阶组件在性能方面有何区别?
在 React 中,组合组件和高阶组件在性能方面有何区别?
193 67
|
4月前
|
前端开发 JavaScript 安全
除了高阶组件和render props,还有哪些在 React 中实现代码复用的方法?
除了高阶组件和render props,还有哪些在 React 中实现代码复用的方法?
194 62
|
6月前
|
移动开发 前端开发 JavaScript
React音频播放列表组件:常见问题、易错点与解决方案
本文介绍了在React中实现音频播放列表时常见的挑战及解决方案。通过基础实现、常见问题分析和最佳实践,帮助开发者避免状态管理、生命周期控制和事件处理中的陷阱。关键点包括使用`useRef`操作音频元素、`useState`同步播放状态、全局状态管理防止多音频同时播放、以及通过`useEffect`清理资源。还提供了代码示例和跨浏览器兼容性处理方法,确保高效实现功能并减少调试时间。
206 30
|
6月前
|
编解码 前端开发 开发者
React 图片组件样式自定义:常见问题与解决方案
在 React 开发中,图片组件的样式自定义常因细节问题导致布局错乱、性能损耗或交互异常。本文系统梳理常见问题及解决方案,涵盖基础样式应用、响应式设计、加载状态与性能优化等,结合代码案例帮助开发者高效实现图片组件的样式控制。重点解决图片尺寸不匹配、边框阴影不一致、移动端显示模糊、加载失败处理及懒加载等问题,并总结易错点和最佳实践,助力开发者提升开发效率和用户体验。
193 22
|
前端开发
前端学习笔记202307学习笔记第五十九天-react源码-是否错误的使用props属性
前端学习笔记202307学习笔记第五十九天-react源码-是否错误的使用props属性
154 0
|
前端开发 JavaScript API
react组件进阶 render props (渲染属性) ts
我举一个这样的场景,在编辑用户,我们需要一个用户数据的表单,然后在个人中心的时候,我们也需要一个用户的表单,但是这两个界面长的是布局啥的都不一样,无法达到界面复用。功能都是展示用户数据。
react组件进阶 render props (渲染属性) ts
|
前端开发 JavaScript
【React】归纳篇(四)组件的三大属性之 state | props | refs 属性
【React】归纳篇(四)组件的三大属性之 state | props | refs 属性
153 0
|
安全 前端开发 JavaScript
React 之props属性
React 里有一个非常常用的模式就是对组件做一层抽象。组件对外公开一个简单的属性(Props)来实现功能,但内部细节可能有非常复杂的实现。 可以使用 JSX 展开属性 来合并现有的 props 和其它值: return &lt;Component {...this.props} more="values" /&gt;; 如果不使用 JSX,可以使用一些对象辅助方法如 ES6 的 Object
1983 0
|
设计模式 前端开发 数据可视化
【第4期】一文了解React UI 组件库
【第4期】一文了解React UI 组件库
651 0