React面向组件编程

React面向组件编程

一、函数式组件

官方推荐由类式组件逐步迁移到函数式组件

javascript 复制代码
function MyComponent() {
	console.log('this') // undefined,在严格模式下没有全局属性
	return <h1>函数式组件</h1>
}

const root = document.getElementById('root');
ReactDOM.render(<MyComponent />, root);

执行情况:

  1. React解析组件标签,找到MyComponent
  2. 发现组件是使用函数定义,随后调用该函数,将返回的虚拟DOM转为真实DOM,随后呈现在页面上

二、类式组件

javascript 复制代码
class MyComponent extends React.Component {
	// render是在MyComponent原型对象上,供实例使用
	render() {
			return <h1>类式组件</h1>
	}
}

const root = document.getElementById('root');
ReactDOM.render(<MyComponent />, root);

执行情况:

  1. React解析组件标签,找到MyComponent
    2)发现组件是使用类定义,随后new出来该类实例,并通过该实例调用到原型上的render方法
    3)将render返回的虚拟DOM转为真实DOM,随后呈现在页面上

三、类的基本知识回顾

1)类中的构造器不是必须的,要对实例进行一些初始化操作,比如:添加指定属性

2)如果A类继承B类,且A类中写了构造器函数,那么A类构造器函数中的super是必须要调用的

3)类中所定义的方法,都是放在了类的原型对象上,供实例使用

相关推荐
Joy T3 小时前
Agent 确定性上下文设计:从 Prompt 参数注入到能力分层
java·开发语言·微服务·架构·prompt·agent context
半个落月6 小时前
LangSmith 全链路观测(下):用 Dataset 与 LLM Judge 量化评估 RA
javascript·langchain
专注仿真7 小时前
引擎扩展性与集成设计深度剖析:从 14 个扩展点到 DIS→HLA 演进之路
开发语言·算法·仿真引擎·推演引擎
Best-Wishes7 小时前
科来网络分析系统(技术交流版)使用说明书
开发语言·junit·php
半个落月7 小时前
LangSmith 全链路观测(上):用 LangGraph 与 Milvus 构建可追踪的 RAG 客服
javascript·langchain
代码不停8 小时前
自动化测试(java)
java·开发语言·selenium·自动化
Java后端的Ai之路8 小时前
06-React-Props
前端·react.js·前端框架
半个落月8 小时前
LangChain.js Agent 中间件实战:生命周期、动态工具与文件权限
javascript·langchain
Flynt8 小时前
开源"间谍卫星"说数据全是真的,我把它的免key数据源挨个试了一遍
前端·开源·数据可视化
Csvn9 小时前
渲染管线
前端