React学习笔记(3.0)

【ReactJs学习笔记】【编译生产环境的React应用】 目录 目录 package.json 本地服务器打开编译好的项目 可以快速以当前路径为根目录建立服务的工具pushstate-server 快捷链接 package.json "scripts": { "start": "react-scripts start", "build": "reac 阅读详情

classnames优化类名控制

classnames是一个简单的JS库,可以非常方便的通过条件动态控制class类名的显示。

安装classnames:

npm i classnames

导入:

import classNames from 'classnames'
 <div className={classNames('box3',{box2:1===1})}>我是使用classnames的文本</div>

这里使用了box3和box2的动态类名,我们来到对应的样式文件

设置了背景和字体颜色,来看最终效果

 受控表单绑定

概念:使用React组件的状态(useState)控制表单的状态

在这里插入一下额外的小知识点--React调试工具:react developer tools

这个东西和vue调试工具一样,都需要去重谷歌商店中下载,不过懂的都懂,需要科学上网。也可以从网上找一些分享的资源进行下载即可,这里推荐一个网盘链接:

链接: https://pan.baidu.com/s/1wZ4BVFN65qjyxI9frRPJ7A?pwd=1rdp

下载完毕后,在开发者模式下拖拽到谷歌浏览器即可。

这时最好重启一下谷歌浏览器,否则对应的调试工具的components选项可能不会出来。

回到React双向绑定这里,就是在输入框输入值,然后在React调试工具中也可以看到对象的状态的值,相反,在调试工具中修改里面的值,对应输入框的值也会对应的进行修改。

对应的代码如下:

// 1.声明一个React状态
  const [value,setValue]=useState('')
  //2.核心绑定流程
  //①通过value属性绑定React状态
  //②绑定onChange事件,通过事件参数e拿到输入框最新的值,反向修改到React状态



 

<input type="text" 
      value={value}
      onChange={(e)=>setValue(e.target.value)}/>

React中获取DOM

在React中获取/操作dom,需要使用useRef钩子函数,分为两步:

1.使用useRef创建对象,并于tsx绑定

const inputRef=useRef<HTMLInputElement>(null)
<input type="text" 
      value={value}
      onChange={(e)=>setValue(e.target.value)}
      ref={inputRef}/>

2.在dom可用是,通过inputRef.current拿到dom对象

const inputRef=useRef<HTMLInputElement>(null)
const showDom=()=>{
  console.log(inputRef.current);
  
}
<input type="text" 
      value={value}
      onChange={(e)=>setValue(e.target.value)}
      ref={inputRef}/>
      <button onClick={showDom}>获取dom</button>
    </div>

所对应的效果,就是当我们点击按钮时,控制台输出dom对象

react全家桶笔记整理 立即下载

相关推荐

React-devtools-3.6.0.zip(最新版chrome的React插件)

chrome谷歌浏览器,打开空白页,地址栏chrome://extensions/打开扩展程序页面(开发者模式),将下载的React-devtools-3.6.0.zip拖拽到该页面,安装成功。

react 调试工具 : React DevTools安装

react 调试工具 : React DevTools安装 去百度网盘下载: https://pan.baidu.com/s/15KdgdiaApSX3ZZ6UPWJYOw 提取码: uqi2

weixin_41793221的博客 312

避坑指南:Allegro 17.2更新封装时遇到的5个典型问题及解决方案(含Symbol报错处理)

本文深度解析Allegro 17.2封装更新过程中的核心机制与常见陷阱。针对“Update Symbols”功能失效、焊盘不匹配、DRC报错、图形层叠错误等5大典型问题,提供从原理分析到实战解决方案的完整指南,帮助用户实现从“更新失败”到“丝滑替换”的平稳过渡。

tgb34567890的博客 1040

【React】《React 学习手册 (第2版) 》笔记-汇总

Array.reduceRight 的作用与 Array.reduce 相同,只不过不从数组开头开始归约,而是从数组末尾开始。把数组转换成对象。

江湖人称菠萝包 1849

GO与KEGG富集分析实战:从差异基因到功能注释

本文详细介绍了GO与KEGG富集分析的完整实战流程,从差异基因列表出发,通过基因ID转换、核心分析到结果可视化,系统阐述了如何将基因数据转化为生物学洞察。文章重点讲解了使用R语言clusterProfiler包进行GO和KEGG富集分析的具体步骤、参数设置及常见问题解决方案,并强调了结果解读与生物学故事构建的方法,帮助研究者深入理解差异基因的集体功能倾向。

weixin_29291863的博客 919

Allegro PCB设计实战:5分钟搞定DDR信号线的Match Group等长规则设置

本文详细介绍了在Allegro PCB设计中,如何快速为DDR信号线设置Match Group等长规则。通过实战演练,解析了从理解相对传输延迟原理、在规则管理器中创建Match Group,到设置合理容差和利用动态绕线指示的全流程,帮助工程师在5分钟内高效完成高速信号时序约束,提升设计可靠性与效率。

gg901的博客 1055

React 开发者工具 react developer tools 安装

React 开发者工具 react developer tools 安装 React开发者工具 react developer tools 安装 利用该工具可方便react查看组件,如果可翻墙,可在google应用商店下载,若没有: 下载链接 百度网盘:(需要自取) 链接: https://pan.baidu.com/s/1wZ4BVFN65qjyxI9frRPJ7A?pwd=1rdp 提取码: 1rdp 下载后是一个 crx 文件,直接将其 拖到 扩展程序 即可 如果一个网站是用 React

weixin_42272869的博客 3323

C++动态规划详解

动态规划思想 一、动态规划概念: 动态规划(dp)是研究多步决策过程最优化问题的一种数学方法。在动态规划中,为了寻找一个问题的最优解(即最优决策过程),将整个问题划分成若干个相应的阶段,并在每个阶段都根据先前所作出的决策作出当前阶段最优决策,进而得出整个问题的最优解。即记住已知问题的答案,在已知的答案的基础上解决未知的问题。 在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后

weixin_51951103的博客 2万+

React developer tools调试工具下载及安装教程

解压后,在vscode打开(或者其他工具),运行命令 npm install,会生成node_modules;然后打开谷歌浏览器,扩展程序,管理扩展程序,加载已解压的扩展程序,将unpacked放进就ok了。链接: https://pan.baidu.com/s/18aV8O-BK5SNNsQD3h1yCyA?或者 官网 https://github.com/facebook/react-devtools/tree/v3 ,下载zip包,解压。

weixin_47282274的博客 4511

从零构建简历智能匹配系统:AI技术助力高效招聘

本文详细介绍了简历智能匹配系统的开发过程,从数据收集、预处理、特征提取到模型匹配和结果展示,每一步都提供了详细的代码实例。通过使用TF-IDF、Word2Vec和BERT等技术,我们能够有效地将求职者的简历与职位描述进行匹配,从而提高招聘效率。未来,随着自然语言处理技术的进一步发展,简历智能匹配系统将变得更加智能和高效,为企业和求职者提供更好的服务。

理论都是虚的,代码才是王道。 310

45.qt quick-qml虚拟软键盘详解(一)

1.qml虚拟键盘介绍 Qt虚拟键盘的主要功能包括: 可定制的键盘布局和风格与动态切换。 带有单词选择的预测性文本输入。 角色预览和替代角色视图。 自动大小写和空格插入。 不同分辨率的可伸缩性。 支持不同的字符集(拉丁,简体/繁体中文,印地语,日语,阿拉伯语,希伯来语,韩语和其他)。 支持大多数常见的输入语言,可以轻松扩展语言支持。 从左到右和从右到左的输入。 硬件键支持2路和5路导航。 手写支持,带有全屏输入的手势。 音频反馈。 跨平台功能。 支持多国语言,高达40多个语言 本

抵抗时间扭曲,坚持做一件有意义的事 3560

使用reactjs-popup创建React模态框(Modal)的完整指南

在现代Web开发中,模态框(Modal)是一种常见的UI组件,用于显示重要信息、收集用户输入或确认操作。reactjs-popup库提供了一种简单而强大的方式来创建React模态框,无需复杂的配置即可实现专业级的弹窗效果。 ## 基础模态框实现 使用reactjs-popup创建基础模态框非常简单,只需在Popup组件上添加`modal`属性即可: ```jsx import Popup f

gitblog_00215的博客 1280

从零开始玩转边缘 AI:Jetson Nano 深度学习环境搭建与 YOLOv5 部署指南

Jetson Nano是NVIDIA推出的嵌入式AI开发板,凭借其强大的GPU计算能力和完善的软件生态系统,成为边缘AI部署的理想平台。本教程源于作者团队参加2024中国机器人大赛暨RoboCup机器人世界杯中国赛机器人先进视觉3D识别赛道的实战经验,是一份经过验证的环境部署指南。

LXY_LOVE36的博客 234

ES6与ReactJS学习笔记

1.ES6 ES6,是ECMAScript 6 的简称,是JavaScript语言的下一代标准,已于2015年6月正式发布。 1.1. let于const 之前,我们在编写js定义变量的时候,只有一个关键字 var。var有一个问题,就是定义的变量会成为全局变量。 // var变量的作用域问题检查 for(var i = 0;i<5;i++){ console.log(i); } c...

fechinchu的博客 1812

深入浅出之ADown降采样模块(YOLO)

YOLOv9中的ADown模块是一种用于目标检测任务中的下采样操作的卷积块。在深度学习模型中,下采样(downsampling)是减少特征图空间维度的常用技术,它有助于模型在更高层次上捕捉图像的特征,同时减少计算量。ADown模块的设计旨在以一种高效且对性能影响较小的方式进行这一操作。

浩瀚之水的专栏 4177

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

ReactJS 101代码规范终极指南:Airbnb React/JSX风格指南的实际应用

ReactJS 101作为React开发者的入门指南,不仅教授React基础知识,还特别强调了代码规范的重要性。在React开发中,遵循统一的代码规范是提升团队协作效率和代码质量的关键。本文将深入探讨如何在ReactJS 101项目中实际应用Airbnb React/JSX风格指南,帮助开发者编写更专业、更易维护的React代码。 ## 📋 为什么需要React代码规范? 在团队协作开发中,

gitblog_00879的博客 1814

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

ReactJS学习笔记八:动画

ReactJS学习笔记八:动画 分类:react学习笔记javascript2015-07-06 20:27321人阅读评论(0)收藏举报 react动画 目录(?)[+] 这里只讨论React的一个动画插件提供的动画机制,其他的通过自己写JS操作的动画都是一样的,和React没啥关系。 React.addons.CSSTran...

diaowojian9497的博客 162

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

react页面渲染之前_reactjs - 在react.js中渲染后滚动到页面顶部

reactjs - 在react.js中渲染后滚动到页面顶部我有一个问题,我没有想法,如何解决。在我的react组件中,我显示了一长串数据,底部显示了很少的链接。点击任何链接后,我用新的链接集合填写列表,需要滚动到顶部。问题是 - 如何在渲染新集合后滚动到顶部?'use strict';// url of this component is #/:checklistId/:sectionIdva...

weixin_29065015的博客 1611

React中swiper的配置(reactjs-swiper)

React中reactjs-swiper的使用与入坑 React中reactjs-swiper的使用与入坑 本文最先参考了https://www.cnblogs.com/cbp-jltx/p/9681838.html 但是,也不知道什么原因,swiperOptions始终不起作用,不知道是不是我自己的原因,但是通过一番摸索,我自己弄出了一套可行的办法。 总共分为六个步骤: 第一步: //npm install reactjs-swiper; // 先安装 reactjs-swiper; npm insta

weixin_43486426的博客 2870

【ReactJs学习笔记】【Chrome安装react审查插件&&组件】

目录 目录 Chrome安装react审查插件 组件 创建并导出组件 引用组件 尝试直接将新组件放置到对应标签 快捷链接 Chrome安装react审查插件 react developer tools拓展安装包下载 ClickHere&amp;amp;gt;&amp;amp;gt; 拖动下载了的.crx文件到拓展程序,显示如下 打开react项目,并用开发者工具,即可看到 ...

m0_37136491的博客 1601

Reactjs-popup性能优化技巧:3KB轻量级库的高效使用指南

Reactjs-popup是一个强大的React弹窗组件库,它集成了模态框、工具提示和菜单功能于一体,仅3KB的轻量级体积让它在性能表现上尤为出色。作为一名前端开发者,掌握Reactjs-popup的性能优化技巧能显著提升你的应用体验。本文将分享7个实用的性能优化技巧,帮助你充分发挥这个轻量级库的潜力。 ## 🔍 为什么选择Reactjs-popup进行性能优化? Reactjs-popup

gitblog_01097的博客 509

React学习笔记

相关知识点: ES6: 笔记:ES6学习笔记 资料:阮一峰ES6 node.js: 官网下载安装。 检查安装成功的命令: node -v(node版本查询) npm -v(npm版本查询) cnpm:淘宝镜像 webpack: 待补充: window命令: cd 定位到目录,用法:cd + 路径 dir 列出文件列表 cls 清空命令提示符窗口...

牛爷爷的博客 467

推荐一款ReactJS打造的Chrome扩展:ReactJS Chrome Extension

推荐一款ReactJS打造的Chrome扩展:ReactJS Chrome Extension 去发现同类优质开源项目:https://gitcode.com/ 在这个快速发展的前端开发时代,ReactJS已经成为了许多开发者构建高效可复用UI的强大工具。今天,我要向大家推荐一款基于ReactJS,并且兼容最新版本的Chrome浏览器扩展——ReactJS Chrome Extension。它不仅...

gitblog_00083的博客 586

深度掌握 ReactJS 高级概念:前端开发者必备

这篇文章汇总了 ReactJS 中值得深入研究的高级概念。读完后,不仅在前端面试中能更胸有成竹,还能自行开发一个类似 ReactJS 的 UI 库。目录Rendering 的含义与过程Re-rendering 发生的机制及原因Virtual DOM 的原理Reconciliation 算法的运行方式ReactJS 的性能优化方案1. 什么是 Rendering?它是如何进行的?在 React 中,...

粉丝们务必加入微信粉丝群 1917

掌握 ReactJS 基础概念

在 React 中,我们常提到 “渲染(Rendering)”。本质上,它是把 JSX 或通过 React.生成的元素转换为实际的 DOM 节点,让页面在浏览器中展现出来。JSX 与 React.JSX(Java XML)是一种 React 引入的语法糖。浏览器只能理解 Java,所以 JSX 需要先经过 Babel 编译成 React.的调用,才会生成所谓的 “React Element”(一个纯粹的 Java 对象)。// JSX 写法// 例子1</h1>;// Babel 转换后");

a6588433的博客 1244

reactjs-swiper 在react项目中实现轮播

1.快速新建项目 npx create-react-app swiper 2.安装依赖 yarn add reactjs-swiper axios --save-dev 3.文件目录 App.js import React, { Component } from 'react'; import './App.scss'; import SwiperBar from './Swip...

Twinkle的博客 5947
上一篇: Java学习笔记(1.0)
下一篇: docker学习笔记(1.0)
mez_Blog
mez_Blog 新星创作者: 前端开发技术领域 新星创作者: 前端开发技术领域
博客等级 码龄9年 1万+粉丝 346原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mez_Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值