广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >React组件的应用介绍
  • 349
分享到

React组件的应用介绍

2024-04-02 19:04:59 349人浏览 薄情痞子
摘要

目录1. 介绍2. 组件的创建方式2.1 函数创建组件2.2 类组件3. 父子组件传值3.1 函数组件3.2 类组件1. 介绍 组件允许你将 UI 拆分为独立可复用的代码片段,并对每

1. 介绍

组件允许你将 UI 拆分为独立可复用的代码片段,并对每个片段进行独立构思。从概念上类似于 javascript 类或函数。它接受任意的形参( props ),并返回用于描述页面展示内容的 React元素( jsx )。 定义好的组件一定要有返回值。

react中定义组件的2种方式

  • 函数组件(无状态组件/UI组件)
  • 类组件(状态组件/容器组件)

2. 组件的创建方式

2.1 函数创建组件

注意点:

  • 函数组件(无状态组件):使用JS的函数创建组件;
  • 函数名称必须以大写字母开头;
  • 函数组件必须有返回值(jsx/null),表示该组件的结构,且内容必须有顶级元素包裹。

使用:

import React, { Component } from 'react'
// 定义函数组件  如果你安装了jsx插件,则可以通过 【rfc】 完成创建
// 1.使用js中的定义函数
// 2.函数名称,首字母大写
// 3.必须要有jsx/null返回值,如果是jsx则一定要有顶层元素包裹
const App = () => {
  return (
    <div>
      <h3>我是一个App函数组件</h3>
    </div>
  )
}
export default App

2.2 类组件

注意点:

  1. 使用 es6 语法的 class 创建的组件(状态组件)
  2. 类名称必须要大写字母开头
  3. 类组件要继承 React.Component 父类,从而可以使用父类中提供的方法或者属性
  4. 类组件必须提供 render 方法,用于页面结构渲染,结构必须要有顶级元素,且必须 return 去返回

使用:

import React, { Component } from 'react'
// 定义类组件  如果你安装了jsx插件,则可以通过 【rcc】来创建类组件
// 1.要以es6的定义类来定义 ,必须以class定义类
// 2.此类必须要继承父类[Component]
// 3.此类必须要有一个成员方法 render,此方法中必须要返回jsx/null,如果是jsx必须要有顶层元素
class App extends Component {
  render() {
    return (
      <div>
        <h3>App之类组件</h3>
      </div>
    )
  }
}
export default App

3. 父子组件传值

组件间传值,在React中是通过只读属性 props 来完成数据传递的。

props:接受任意的形参,并返回用于描述页面展示内容的 React 元素。

props中的数据是不能被修改的,只能读取。

props是一个单向数据流。 父流向子,子不能直接去修改 props 中的数据。

3.1 函数组件

import React, { Component } from 'react'
// 函数组件间的通信
// 子组件通过入参 props来接收 父组件传过来的数据  props它是一个对象
const Child = props => {
  let {title} = props
  console.log(props)
  return (
    <div>
      <h3>Child组件 -- {title}</h3>
    </div>
  )
}
// 标准写法
// const Child = ({ title = '默认值', fn }) => {
//   console.log(fn())
//   return (
//     <div>
//       <h3>Child组件 -- {title}</h3>
//     </div>
//   )
// }
const App = () => {
  // 在react中的方法,先定义后调用
  const fn = () => {
    return 'fn'
  }
  return (
    <div>
      <h3>App组件</h3>
      {}
      <Child title="hello" num={100} obj={{ id: 1 }} fn={fn} />
      {}
    </div>
  )
  // function fn() {
  //   return 'function'
  // }
}
export default App

3.2 类组件

import React, { Component } from 'react'
// 类组件 父传子
// 子组件它是通过 成员属性this.props来接受
class Child extends Component {
  render() {
    // 得到父组件传过来的自定义属性数据
    let { title = '默认值', fn } = this.props
    console.log(fn())
    return (
      <div>
        <h3>Child组件 -- {title}</h3>
      </div>
    )
  }
}
class App extends Component {
  fn = arg => () => 'fn@@@ -- ' + arg
  render() {
    return (
      <div>
        <h3>App</h3>
        {}
        <Child title="我是标题" fn={this.fn(200)} />
      </div>
    )
  }
}
export default App

到此这篇关于React组件的应用介绍的文章就介绍到这了,更多相关React组件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: React组件的应用介绍

本文链接: https://www.lsjlt.com/news/168758.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • React组件的应用介绍
    目录1. 介绍2. 组件的创建方式2.1 函数创建组件2.2 类组件3. 父子组件传值3.1 函数组件3.2 类组件1. 介绍 组件允许你将 UI 拆分为独立可复用的代码片段,并对每...
    99+
    2022-11-13
  • React高阶组件使用详细介绍
    首先 我们要了解什么是高阶组件 第一 高阶组件必须是一个函数 第二 高阶组件接收一个参数,这个参数也必须是一个组件 第三 他的返回值 也是一个组件 至于高阶组件的作用 我们后续会讲解...
    99+
    2023-01-29
    React高阶组件 React高阶组件的使用 React高阶组件的作用
  • React过渡动画组件基础使用介绍
    目录1. 基础使用2. 将animate.css集成到csstranistion中3. 列表过渡4. switchTransition动画5. 路由切换过渡6. 高阶组件实现路由切换...
    99+
    2022-11-13
  • React受控组件与非受控组件详细介绍
    目录1. 受控组件1.1 介绍1.2 受控组件简写1.3 在表单中使用受控组件1.4 综合案例2. 非受控组件介绍非受控组件的应用1. 受控组件 1.1 介绍 概述: 将 state...
    99+
    2022-11-13
  • React组件三大核心属性StatepropsRefs介绍
    目录1.statesetState2.props1.传递单个属性2.批量传递属性对props进行限制对props设置默认值state与props的区别3.ref1.state sta...
    99+
    2023-02-15
    React state props refs React组件属性
  • React-Native之截图组件react-native-view-shot的介绍与使用小结
    目录一、现象二、解决三、总结:一、现象 1、需求:把某展示页面进行截取保存到相册、并可进行以海报的形式分享出去; 2、支持iOS和安卓 二、解决 1、安装: npm i --save...
    99+
    2022-11-12
  • React前端路由应用介绍
    浏览器端的前端路由模式:hash模式,history模式 安装路由模块 路由模块不是react自带模块,需要安装第3方模块 // react-router-dom 它现在最新的版本...
    99+
    2022-11-13
  • Android- Widget (应用微件/小组件/插件) 使用介绍
    一、概念: App Widget 即叫 应用微件 或者 小组件/插件. 是可以嵌入其他应用(如主屏幕)并 接收定期更新的微型应用视图。 这些视图称为界面中的微件. 例如,添加到桌面上的音乐Widget: app_widget_music_...
    99+
    2023-08-23
    android
  • jQuery UI组件介绍
    一、jQuery UI简介 jQuery UI 是建立在 jQuery JavaScript 库上的一组用户界面交互、特效、小部件及主题。无论您是创建高度交互的 Web 应用程序还是...
    99+
    2022-11-13
  • Openstack Mitika组件介绍
    OpenStack覆盖了网络、虚拟化、操作系统、服务器等各个方面。它是一个正在开发中的云计算平台项目,根据成熟及重要程度的不同,被分解成核心项目、孵化项目,以及支持项目和相关项目。每个项目都有自己的委员会和...
    99+
    2022-10-18
  • React路由渲染方式与withRouter高阶组件及自定义导航组件应用详细介绍
    目录1. 路由的三种渲染方式1.1 component渲染方式1.2 render方式渲染1.3 案例-登录成功才能访问某个页面1.4 children方式渲染2. withRout...
    99+
    2022-11-13
  • React中props使用介绍
    目录1.继续深入state2.props3.限制Props的传递类型4.函数接收props参数5.插槽1.继续深入state state有两种用法: setState({}) 和 s...
    99+
    2022-12-21
    React props React props使用介绍
  • React事件处理超详细介绍
    目录1. 事件绑定1.1 函数组件1.2 类组件2. 合成事件3. 事件传参的3种不同写法4. this 指向问题1. 事件绑定 React 元素的事件处理和 DOM 元素的很相似,...
    99+
    2022-11-13
  • React中DOM事件和状态介绍
    目录DOM事件参数作用域状态无状态组件有状态组件使用状态数据初始化状态数据修改状态数据DOM事件 react中绑定事件的语法跟html中为元素绑定事件的语法相似, html中绑定事件...
    99+
    2022-11-13
  • React组件封装中三大核心属性详细介绍
    目录1、介绍2、state概念演示3、props概念props与state区别4、refs概念refs种类5、父子组件什么是父子组件父子组件之间传值1、介绍 React组件中默认封装...
    99+
    2022-11-13
  • Blazor页面组件用法介绍
    Blazor应用中, 是使用组件来构建用户界面, 例如页面、窗口、对话框等。 组件 使用C#和HTML标记的组合, Blazor组件称之为Razor组件, 文件名以 (.razor)...
    99+
    2022-11-13
  • 对Netty组件的基本介绍
    Netty的介绍 netty是一个异步的基于事件的框架,主要针对在tcp协议下,开发面向clients端的高...
    99+
    2022-11-12
  • ASP.NET Core中的Blazor组件介绍
    目录关于组件组件类静态资产路由与路由参数组件参数请勿创建会写入其自己的组参数属性的组件子内容属性展开任意参数捕获对组件的引用在外部调用组件方法以更新状态使用 @ 键控制是否保留元素和...
    99+
    2022-11-13
  • Vue中的局部组件介绍
    在Vue中我们可以自己定义(注册)局部组件 定义组件名的方式: var ComponentA = { } var ComponentB = { } 然后在 compone...
    99+
    2022-11-12
  • React中10种Hook的使用介绍
    目录React Hook是什么? React目前提供的Hook 1.useState 2.useEffect & useLayoutEffect 3.useMemo &...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作