React入门小册(三)组件

React中的组件是可复用的代码块,分为函数式组件和类组件。函数式组件简洁,仅从props获取数据,而类组件可存储状态和处理生命周期。通过propTypes可以定义组件的属性类型。组件可以通过props组合成更复杂的视图,如在WelcomeBanner组件中组合了Greeting和p元素。

组件

React中的组件是可复用的代码块,其由JSX元素构成,并根据相关的逻辑和数据创建动态UI。

函数式组件 vs 类组件

React 中有两种类型的组件:函数式组件和类组件。

函数式组件通常情况下仅从 props 中获取输入并且返回一个 JSX 元素。这些组件主要是通过声明函数的方式定义的。例如:

function Greeting(props) {
  return <h1>Hello, {props.name}!</h1>;
}

类组件则是通过 ES6 class 语法来定义的。它们可以存储内部 state、订阅生命周期方法等等。例如:

class Greeting extends React.Component {
  render() {
    return <h1>Hello, {this.props.name}!</h1>;
  }
}

我们可以使用 propTypes 定义组件接受哪些属性以及每个属性的类型。例如:

import PropTypes from 'prop-types';

class Greeting extends React.Component {
  static propTypes = {
    name: PropTypes.string.isRequired
  };

  render() {
    return <h1>Hello, {this.props.name}!</h1>;
  }
}
组件的使用

要使用定义好的组件,我们需要将它像普通 HTML 元素一样在 JSX 中使用:

<Greeting name="John" />

!!! 组件的名称必须以大写字母开头!!!

组合组件

React 的单向数据流使得让多个小组件组合形成大组件非常容易。例如:

function WelcomeBanner() {
  return (
    <div>
      <Greeting name="John" />
      <p>Welcome to our website!</p>
    </div>
  );
}

在这里,我们将两个组件 Greeting 和

组合到了一个 WelcomeBanner 中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值