当前位置: 首页 > news >正文

重温react-06(初识函数组件和快速生成格式的插件使用方式)

开始

函数组件必然成为未来发展的趋势(个人见解),总之努力的去学习,才能赚更多的钱.加油呀!

函数组件的格式

import React from 'react'export default function LearnFunction01() {return (<div>LearnFunction01</div>)
}

以上是函数式组件的组基本的方式

快捷生成以上语句的插件

在vscode插件市场搜索该插件,通过rcc,或者rfc等指令,可以快速的生成一段代码,加快在工作中的效率 Reactjs code snippets (复制搜索即可).

useState

和vue3是非常相似的,这个可以设置一个变量的初始值,并且会给你一个一个set函数设置它的值.

import React, { useState } from 'react'
// 函数组件 useState的用法
export default function LearnFunction01() {// 定义一个变量 , 定义一个初始化的设置值的方式 , 传入初始值const [number, setNumber] = useState(0)// 这个是引用数据类型需要前后的值进行比较才能改变视图const [arr, setArr] = useState([1, 2, 3, 4])return (<div><div>{number}</div><button onClick={() => {setNumber(number + 1)}}>+</button><hr /><button onClick={() => {setArr([...arr, arr.length + 1])}}>点击增加arr的长度</button><div>{arr.map((item, index) => {return <div key={index}>{item}</div>})}</div></div>)
}

useEffect

import React, { useState,useEffect } from 'react'
// 函数组件 useEffect的用法
export default function LearnFunction01() {// 定义一个变量 , 定义一个初始化的设置值的方式 , 传入初始值const [number, setNumber] = useState(0)// 这个是引用数据类型需要前后的值进行比较才能改变视图const [arr, setArr] = useState([1, 2, 3, 4])useEffect(() => {console.log('视图更新了')console.log(document.getElementById('div'));})return (<div><div id="div">{number}</div><button onClick={() => {setNumber(number + 1)}}>+</button><hr /><button onClick={() => {setArr([...arr, arr.length + 1])}}>点击增加arr的长度</button><div>{arr.map((item, index) => {return <div key={index}>{item}</div>})}</div></div>)
}

注意

所有写的函数名字要以组件的形式,在出口展示,前面的react01 02 03 ......都是的

我这个就是直接在app.js展示的没有设置路由很不规范,但是为了学习而已 , 不需要如此的规范,后续会出一个nodejs+react+websocket的开源项目>>>>点个关注吧.

http://www.lryc.cn/news/389646.html

相关文章:

  • 【高考志愿】仪器科学与技术
  • Elasticsearch的Mapping
  • 【vocabulary in use (elementary)】6 Health and Illness
  • 探囊取物之多形式注册页面(基于BootStrap4)
  • 【C++进阶学习】第五弹——二叉搜索树——二叉树进阶及set和map的铺垫
  • 【RabbitMQ实战】Springboot 整合RabbitMQ组件,多种编码示例,带你实践 看完这一篇就够了
  • 【你也能从零基础学会网站开发】理解DBMS数据库管理系统架构,从用户到数据到底经历了什么
  • Vue.js 中的API接口封装实战与详解
  • 职场内卷、不稳定、没前景……怎么破?
  • LeetCode 算法:将有序数组转换为二叉搜索树 c++
  • 智慧公厕系统改变了人们对服务区公厕的看法
  • 终极指南:RNNS、Transformers 和 Diffusion 模型
  • WPF UI 3D 基本概念 点线三角面 相机对象 材质对象与贴图 3D地球 光源 变形处理 动作交互 辅助交互插件 系列三
  • 分子AI预测赛Task2笔记
  • 剖析DeFi交易产品之UniswapV4:创建池子
  • 速盾:cdn内容分发服务有哪些优势?
  • 如何利用React和Python构建强大的网络爬虫应用
  • 炎黄数智人:招商局集团推出AI数字员工“招小影”
  • 【开发篇】明明配置跨域声明,为什么却仍可以发送HTTP请求
  • 单片机中有FLASH为啥还需要EEROM?
  • Qt的源码目录集合(V5.12.12版本)
  • 记因hive配置文件参数运用不当导致 sqoop MySQL导入数据到hive 失败的案例
  • 自动化邮件通知:批处理脚本的通讯增强
  • 236、二叉树的最近公共祖先
  • WebStorm 2024 for Mac JavaScript前端开发工具
  • 【Redis7】零基础篇
  • [ROS 系列学习教程] 建模与仿真 - 使用 ros_control 控制差速轮式机器人
  • Ubuntu22.04使用Systemd设置ROS 2开机自启动遇到的问题
  • AI安全研究滞后?清华专家团来支招
  • 12寸FAB 信息部内外工作职责的一些划分构思