创建一个react项目

news2024/9/20 5:49:06

文章目录

      • 1:命令行输入
      • 2:在vs的终端中输入npm start 来启动项目
      • 3:删除src目录中的干扰项
      • 4:去掉index.js中的严格模式节点
      • JSX介绍
      • JSX中使用js表达式
      • 原生js调用
      • 三元运算符
      • 列表渲染
      • 条件渲染
        • 三元表达式
        • 逻辑&&运算
      • 分支逻辑
      • 类名样式
        • 导入外部css文件
        • 动态控制active类名
      • JSX注意事项
      • yarn启动项目

1:命令行输入

sheep-react为项目名

npx create-react-app sheep-react

2:在vs的终端中输入npm start 来启动项目

3:删除src目录中的干扰项

App.test.js、reportWebVitals.js、setupTests.js、logo.svg

image-20230218142913001

React:框架的核心包

ReactDOM:专门做渲染的包

import ‘./index.css’:应用的全局样式文件

import App from ‘./App’:引入根组件

4:去掉index.js中的严格模式节点

<React.StrictMode>

5:删除文件对应的导入

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MWdFoCvp-1683198794962)(null)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vjFYgEFW-1683198794808)(null)]

JSX介绍

JSX是JavaScript XML(HTML)的缩写,表示在JS代码中书写HTML结构

作用:在React中创建HTML结构(页面UI结构)

优势

1:采用类似于HTML的语法,降低学习成本,会HTML就会JSX

2:充分利用JS自身的可编程能力创建HTML结构

JSX中使用js表达式

const name='sheep'
<h1>你好,我叫{name}</h1>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QezNUwnP-1683198791916)(null)]

原生js调用

const getAge =() =>{
  return "这是js函数的写法"
}
{getAge()}

image-20230218150952434

三元运算符

const flag = true;
{flag ? '66666':'99999'}

列表渲染

const songs =[
  {id:1,name:'sheep'},
  {id:2,name:'botany'},
  {id:3,name:'sheepbotany'}
]
function App () {
  return(
    <div className='App'>
     <ul>
       {
         songs.map(item => <li>{item.name}</li>)
       }
     </ul>
    </div>
  )
}

如果想渲染指定的列表

songs.map(item => <li key={item.id}>{item.name}</li>)

map重复渲染的是哪个模板,就会return谁

需要注意遍历列表时同样需要一个类型为number/string不可重复的key来提高diff的性能

条件渲染

比如经常使用的loading和加载成功

三元表达式

function App () {
  return(
    <div className='App'>
    {flag ? 'loading...正在加载':'加载完成'}
    {flag ? '内容显示中,请稍后':null}
    </div>
  )
}

逻辑&&运算

{true && <span>逻辑与运算显示内容</span>}

分支逻辑

const getHag=(type)=>{
  if(type ===1){
    return <h1>this is h1</h1>
  }
  if(type ===2){
    return <h2>this is h2</h2>
  }
  if(type ===3){
    return <h3>this is h2</h3>
  }
}

function App () {
  return(
    <div className='App'>
   {getHag(1)}
    </div>
  )
}

类名样式

function App () {
  return(
    <div className='App'>
   <span style={{color:'red',fontSize:'30px'}}>this is span</span>
    </div>
  )
}

或者

const style ={
  color:'red',
  fontSize:'30px'
}

function App () {
  return(
    <div className='App'>
   <span style={style}>this is span</span>
    </div>
  )
}

导入外部css文件

.active{
    color: blue
}

image-20230220191409238

import './active.css';

function App () {
  return(
   <span className='active'>测试类名样式</span>
    </div>
  )
}

动态控制active类名

const activeFlag =true
function App () {
  return(
    <div className='App'>
   <span className={activeFlag?'active':''}>测试类名样式</span>
    </div>
  )
}

JSX注意事项

直接上传(img-C9jDOunj-1683198794916)(null)]

git克隆文件

在cmd中输入

git clone https://gitee.com/react-cp/react-pc-code

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VvKU0j5N-1683198794871)(null)]

yarn启动项目

yarn start

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/489134.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Setting up SSH Host ...问题解决

一、问题可能原因&#xff1a; 网速问题导致下载过慢&#xff0c;超时 二、解决方式&#xff1a;手动下载安装 1、确定VSCode commit id&#xff0c;如下图所示 2、拼接请求&#xff0c;下载vscode server包 Arm&#xff1a;https://update.code.visualstudio.com/commit:换…

【AUTOSAR】【通信安全】CRC

目录 一、概述 二、功能说明 2.1 通用行为 2.2 8位CRC计算 2.2.1 8位SAE J1850 CRC计算 2.2.2 8位0x2F多项式CRC计算 2.3 16位CRC计算 2.3.1 16位CCITT-FALSE CRC16 2.3.2 16位0x8005多项式CRC计算 2.4 32位CRC计算 2.4.1 32位以太网CRC计算 2.4.2 32位0xF4ACFB13多…

AIGC产业研究报告 2023——图像生成篇

易观&#xff1a;今年以来&#xff0c;随着人工智能技术不断实现突破迭代&#xff0c;生成式AI的话题多次成为热门&#xff0c;而人工智能内容生成&#xff08;AIGC&#xff09;的产业发展、市场反应与相应监管要求也受到了广泛关注。为了更好地探寻其在各行业落地应用的可行性…

jvm之常用命令行工具

写在前面 本文已起看下给我们的Java程序看病常用到的工具都有哪些&#xff0c;通过工具得到指标&#xff0c;通过指标分析病情&#xff0c;从而给出对应的治疗方案。 1&#xff1a;jps/jinfo 用来获取运行的jvm进程信息&#xff0c;一般我们使用该命令来获取进程号&#xff…

CTF权威指南 笔记 -第二章二进制文件- 2.4 -动态链接

目录 静态文件的缺点 动态链接 位置无关代码 延迟绑定 _dl_runtime_reslove 函数定义 深入审视 静态文件的缺点 随着可执行文件的增加 静态链接带来的浪费空间问题就会愈发严重 如果大部分可执行文件都需要glibc 那么在链接的时候就需要把 libc.a链接进去 如果一个libc…

Spark大数据处理讲课笔记3.6 RDD容错机制

文章目录 零、本讲学习目标一、RDD容错机制&#xff08;一&#xff09;血统方式&#xff08;二&#xff09;设置检查点方式 二、RDD检查点&#xff08;一&#xff09;RDD检查点机制&#xff08;二&#xff09;与RDD持久化的区别&#xff08;三&#xff09;RDD检查点案例演示 三…

Matlab 多项式拟合

一、线性 1、多项式 corrcoef函数 corrcoef函数用来计算矩阵相关系数。 (1)、corrcoef(x)&#xff1a;若x为一个矩阵&#xff0c;返回的则是一个相关系数矩阵。 (2)、corrcoef(x,y)&#xff1a;计算列向量x、y的相关系数&#xff0c;要求x、y具有相等的元素个数。如果x、y是矩…

2023河南土著双非硕士——毕业季秋招春招就业经验分享(仅限于在河南找工作,毕业想留河南)

作为一名河南土生土长的人&#xff0c;本硕皆就读于河南某双非一本&#xff0c;是一个实打实的河南土著&#xff0c;河南作为互联网就业的贫困环境&#xff0c;相较于CSDN博客上那么多动不动就腾讯、阿里、字节等大厂的就业经验分享&#xff0c;我更想分享一下我在河南省内找工…

百度文心一言正式亮相,数说故事受邀成为首批内测企业

3月16日下午&#xff0c;百度在北京召开新闻发布会&#xff0c;正式推出基于百度新一代大语言模型的生成式AI产品——文心一言&#xff0c;百度创始人、董事长兼首席执行官李彦宏现场展示了文心一言在文学创作、商业文案创作、数理推算、中文理解、多模态生成五个使用场景中的综…

卖期权的时候,我们在卖什么?

一直在思考一个问题&#xff0c;卖期权到底是怎么回事&#xff1f;卖实值期权、平值期权、虚值期权背后的本质有什么区别&#xff1f;卖近期的和远期的期权背后的本质又是什么?我们用沪深300指数期权来研究一下。 我们先从数据上来直观感受一下。上面这个表格是2020-12-09日这…

基于R语言的贝叶斯时空数据模型实践技术

时间&#xff0d;空间数据&#xff08;以下简称“时空数据”&#xff09;是最重要的观测数据形式之一&#xff0c;很多科学研究的数据都以时空数据的形式得以呈现&#xff0c;而科学研究目的可以归结为挖掘时空数据中的规律。另一方面&#xff0c;贝叶斯统计学作为与传统统计学…

【OpenCV】 2D-2D:对极几何算法原理

2D-2D匹配: 对极几何 SLAM十四讲笔记1 1.1 对极几何數學模型 考虑从两张图像上观测到了同一个3D点&#xff0c;如图所示**。**我们希望可以求解相机两个时刻的运动 R , t R,t R,t。 假设我们要求取两帧图像 I 1 , I 2 I_1,I_2 I1​,I2​之间的运动,设第一帧到第二帧的运动为…

MiniGPT-4部署过程

文章目录 项目背景部署过程环境配置与文件准备部署推理报错1报错2 项目背景 2023年4月19日&#xff0c;开源项目MiniGPT-4发布&#xff0c;该项目是由KAUST&#xff08;沙特阿卜杜拉国王科技大学&#xff09;&#xff0c;是几位博士开发的。 项目地址&#xff1a;https://gith…

Spark大数据处理讲课笔记3.4 理解RDD依赖

文章目录 零、本讲学习目标一、RDD依赖二、窄依赖&#xff08;一&#xff09;map()与filter()算子&#xff08;二&#xff09;union()算子&#xff08;三&#xff09;join()算子 三、宽依赖&#xff08;一&#xff09;groupBy()算子&#xff08;二&#xff09;join()算子&#…

字符设备驱动

字符设备就是按字节流进行读写的设备&#xff0c;读写数据分先后顺序&#xff0c;如点灯&#xff0c;IIC&#xff0c;SPI&#xff0c;LCD等都是字符设备&#xff0c;这些设备的驱动就叫字符设备驱动。 include/linux/fs.h中 file_operations 结构体为内核驱动操作函数集合&…

如何关闭tomcat?tomcat端口号被占用怎么办

我tomcat一跑就报被占用怎么办&#xff1f;我没开tomcat呀&#xff01;&#xff01; 这种情况一般是你上一次打开tomcat没有关tomcat服务就关闭了变成软件&#xff08;如强行关闭正在运行tomcat的idea&#xff09;&#xff0c;这样你在开tomcat就会显示端口号占用了&#xff0…

API 渗透测试从入门到精通系列文章(上)

导语&#xff1a;这是关于使用 Postman 进行渗透测试系列文章的第一部分。 这是关于使用 Postman 进行渗透测试系列文章的第一部分。我原本计划只发布一篇文章&#xff0c;但最后发现内容太多了&#xff0c;如果不把它分成几个部分的话&#xff0c;很可能会让读者不知所措。 所…

SMOKE Single-Stage Monocular 3D Object Detection via Keypoint Estimation 论文学习

论文地址&#xff1a;SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation Github 地址&#xff1a;https://github.com/open-mmlab/mmdetection3d/tree/main/configs/smoke 1. 解决了什么问题&#xff1f; 预测物体的 3D 朝向角和平移距离对于自动驾…

hive之入门配置

学习hive之路就此开启啦&#xff0c;让我们共同努力 目录 Hive网站&#xff1a; Hive的安装部署&#xff1a; 启动并使用Hive&#xff1a; 安装Mysql: 安装Mysql依赖包&#xff1a; 启动Mysql: 查看密码&#xff1a; 登录root: 密码错误报错&#xff1a; 元数据库配置…

信创国产中间件概览

信创国产中间件概览 中间件国内中间件市场份额第一梯队仍然是IBM> 和Oracle&#xff0c;市场份额合计51%。第二梯队为五大国产厂商&#xff0c;包括东方通、普元信息、宝兰德、中创中间件、金蝶天燕&#xff0c;市场份额合计15%。东方通应用服务器TongWeb对标 开源&#xf…