React 之 函数式组件(二)

React的函数式组件是React组件的一种形式,它使用JavaScript函数而不是类来定义组件。这种组件形式在React 16.8版本引入Hooks之后变得特别流行,因为它使得组件逻辑更加简洁、易于理解和测试。

javascript 复制代码
import React from 'react';  
  
function Welcome(props) {  
//也可以这样写:解构props
//function Welcome({ name,onClick }) {  
  return <h1 onClick={props.onClick}>Hello, {props.name}</h1>;  
}  
  
export default Welcome;

Welcome 是一个函数式组件。它接受一个名为 props 的参数,这个参数是一个对象,包含了传递给组件的所有属性。然后,组件返回一个JSX元素,这个元素会被React渲染到DOM中

React.Component 子类中使用函数式组件Welcome:

javascript 复制代码
class Board extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      name: 'World',
    };
  }
  handleClick() {
    this.setState({
      name: 'OK',
    });
  }	
  renderSquare(name) {
    return (
      <Welcome
        name={name}
        onClick={() => this.handleClick()}
      />
    );
  }

  render() {
    
    return (
        <div className="board-row">
          <!--当然可以直接写函数组件<Welcome name={this.state.name} onClick={() => this.handleClick()}/>-->
          {this.renderSquare(this.state.name)}
        </div>
    );
  }
}
相关推荐
宸翰7 小时前
uni-app 设置 Android 底部虚拟导航栏背景色
android·前端·uni-app
金色的暴发户7 小时前
一劳永逸解决Codex手机验证
前端·人工智能·开源
DanCheOo8 小时前
AI 应用的可观测性:你的 AI 系统在生产上到底表现怎么样
前端·openai
Hyyy8 小时前
流式渲染用react-markdown还是Vercel/Streamdown
前端
风中的小甜瓜8 小时前
ASP.NET Page 那点事
java·前端·asp.net
木西8 小时前
告别机械重复:使用 Node.js + Playwright 构建 24 小时全自动测试网领水脚本
前端·javascript·node.js
西柚小萌新8 小时前
【论文写作】--LaTeX详细入门教程2
前端·html
qdkfz8 小时前
JavaScript 如何解析 Outlook .msg 文件 —— @kenjiuno/msgreader
前端·javascript
LuckyDog阿祥9 小时前
卸载Microsoft Edge:EdgeRemover完整操作指南
前端·edge
zhangxingchao9 小时前
AI应用开发九:从 Hermes Agent 学长期记忆
前端·人工智能·后端