react

1.父子通信

React中是单向数据流,数据只能从父组件通过属性的方式传给其子组件

父传子:props

子传父:子组件通过调用父组件传递到子组件的方法向父组件传递消息的。

2.封装公共组件

首先react公共组件的实现与原生js实现函数基本一致,接受形参,处理数据,返回or不返回一个结果。在不同场景调用组件时,可以通过props属性,传递状态与方法,如果是展示型组件,传入不同样式对象(形参),就可以在不同场景使用多样化展示ui。

3.父组件调用子组件方法

refs

javascript 复制代码
// ChildComponent.js
class ChildComponent extends React.Component {
  doSomething = () => {
    console.log('Child method called');
  };

  render() {
    return <button onClick={this.doSomething}>Call Child Method</button>;
  }
}

// ParentComponent.js
class ParentComponent extends React.Component {
  callChildMethod = ref => {
    if (ref) {
      ref.current.doSomething();
    }
  };

  render() {
    return (
      <div>
        <ChildComponent ref={this.callChildMethod} />
      </div>
    );
  }
}

4.生命周期

componentDidMount: 该方法在组件挂载后立即调用(即插入到DOM树中)。通常用于执行初始设置,例如从API获取数据或设置事件监听器。

componentDidUpdate: 该方法在更新发生后立即调用。每当组件的props或state发生变化时都会触发它。通常用于基于更新后的状态或props执行操作,例如进行额外的API调用。

componentWillUnmount: 该方法在组件即将卸载和销毁之前立即调用。通常用于执行清理操作,例如移除事件监听器或取消任何正在进行的任务

相关推荐
高山我梦口香糖6 分钟前
[electron]预脚本不显示内联script
前端·javascript·electron
神探小白牙7 分钟前
vue-video-player视频保活成功确无法推送问题
前端·vue.js·音视频
Angel_girl3191 小时前
vue项目使用svg图标
前端·vue.js
難釋懷1 小时前
vue 项目中常用的 2 个 Ajax 库
前端·vue.js·ajax
Qian Xiaoo1 小时前
Ajax入门
前端·ajax·okhttp
爱生活的苏苏1 小时前
vue生成二维码图片+文字说明
前端·vue.js
拉不动的猪1 小时前
安卓和ios小程序开发中的兼容性问题举例
前端·javascript·面试
炫彩@之星1 小时前
Chrome书签的导出与导入:步骤图
前端·chrome
贩卖纯净水.2 小时前
浏览器兼容-polyfill-本地服务-优化
开发语言·前端·javascript
前端百草阁2 小时前
从npm库 Vue 组件到独立SDK:打包与 CDN 引入的最佳实践
前端·vue.js·npm