首页 > 其他分享 >React学习起始

React学习起始

时间:2024-10-08 17:13:48浏览次数:9  
标签:学习 react 起始 React prettier createElement 脚手架 JSX

一、准备工作

react是一个用于构建用户界面的 JavaScript 库

脚手架安装:npx create-react-app(脚手架名称) react-basic(包名)--------等同于maven构建项目的性质

启动项目:yarn start or npm start

注:全局安装缺点:太久没初始化项目,就得重新装

 

二、基本使用

1导包 2创建元素 3渲染元素到指定容器

import React from 'react'
import ReactDom from 'react-dom'

/*
标签名字==定义什么样式 属性项 标签内容
*/
// const element = React.createElement('div',{id:'box',title:'哈哈'},'我是内容')
// ReactDom.render(element,document.getElementById('root'))

const element = React.createElement('ul',{className:'list'},[
    React.createElement('li',null,'香蕉'),
    React.createElement('li',null,'香蕉'),
    React.createElement('li',null,'香蕉'),
])
ReactDom.render(element,document.getElementById('root'))

 

三、JSX(上述不直观,JSX是 JS 的语法扩展,通过jsx创建react元素)

脚手架:我们可以写JSX语法代替掉React方法创建元素,脚手架默认经过babel的编译处理。

v17版之前的仍需要导入React包,后续的做了升级,不需依赖React库了。

 JSX注意点

  • 只有在脚手架中才能使用jsx语法

    • 因为JSX需要经过babel的编译处理,才能在浏览器中使用。脚手架中已经默认有了这个配置。

  • JSX必须要有一个根节点, <></> <React.Fragment></React.Fragment>

  • 没有子节点的元素可以使用/>结束

  • JSX中语法更接近与JavaScript

    • class => className

    • for====> htmlFor

  • JSX可以换行,如果JSX有多行,推荐使用()包裹JSX,防止自动插入分号的bug(类似于if写{},包裹起来更好!)

使用prettier插件格式化react代码

  • 安装prettier插件

  • 添加prettier的配置

// 保存到额时候用使用prettier进行格式化
 "editor.formatOnSave": true,
 // 不要有分号
 "prettier.semi": false,
 // 使用单引号
 "prettier.singleQuote": true,
 // 默认使用prittier作为格式化工具
 "editor.defaultFormatter": "esbenp.prettier-vscode",

 

 

标签:学习,react,起始,React,prettier,createElement,脚手架,JSX
From: https://www.cnblogs.com/fengok/p/18292430

相关文章

  • 软件测试学习笔记丨Mitmproxy使用
    本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32334一、简介Mitmproxy是一款开源、免费的代理工具,支持Mac、Windows、Linux。相比其他代理工具,可以通过Python和Mitmproxy工具本身的插件机制,实现通过脚本对Mitmproxy的完全控制。强大的可拓展性和可定制性,可以让测试工程......
  • 使用Python实现深度学习模型:智能身份验证与防伪
    在当今数字化时代,身份验证和防伪技术变得尤为重要。深度学习作为人工智能的一个重要分支,提供了强大的工具来解决这些问题。本文将介绍如何使用Python实现一个基于深度学习的智能身份验证与防伪系统,详细讲解其基本原理和实现步骤。一、项目概述本项目旨在通过训练一个卷积......
  • 为什么 React 和 Vue 不采用像 Svelte 那样的编译方式?
    在前端框架的竞争中,Svelte近年来以其极高的性能和轻量级的架构吸引了众多开发者的注意。与React和Vue等传统框架不同,Svelte通过编译时优化实现高效的UI更新,不依赖于虚拟DOM。然而,尽管Svelte的这种方法具有明显的性能优势,React和Vue仍然没有采用类似的编译方式......
  • (29-6-01)通过回测、ARIMA 和 GRU 预测股票价格:深度学习模型预测(1)
    29.8 深度学习模型预测对于股票市场这类序列数据,使用不考虑数据序列的模型进行预测可能会丢失数据中的重要信息。因此,在本项目中引入了递归神经网络(RNN),它能有效利用数据的序列信息进行预测。递归神经网络主要有三种类型:标准RNN、长短期记忆网络(LSTM)和门控递归单元(GRU)。标......
  • React高阶组件详解
    React高阶组件(HOC)详解定义React高阶组件(HOC)是一个函数,该函数接受一个组件作为参数并返回一个新的组件。高阶组件本身不是一个组件,而是一个函数,它利用React的组合特性,对传入的组件进行增强或修改。使用场景代码重用:当多个组件需要共享相同的逻辑时,可以使用高阶组件来封装这......
  • python基于深度学习的短视频内容理解与推荐系统(源码+vue+hadoop+hive+部署文档+可视
    收藏关注不迷路!!......
  • 深度除氟工艺-电化学法(学习笔记)
    电化学法通过以下操作达到深度除氟的目的:一、电化学原理应用电化学法主要利用电化学原理,在特定的电解装置中,通过电极的氧化还原反应,将废水中的氟离子进行转化和处理。这种转化可以是将氟离子转化为不溶性的氟化物,使其沉积在电极表面或通过其他方式从废水中分离出来。二、......
  • 大模型学习练级的五个阶段,你到哪个阶段了?
    第一阶段不知道概念第一阶段,「不知道大模型是什么意思」,不知道langchain是什么,不知道llm是什么,不知道文心一言,不知道openAI,不知道prompt是什么?这个阶段就是疯狂百度,像一只无头苍蝇,吸收各种概念,记住,只是概念,这个阶段会让自己开始接受AI大模型领域。第二阶段搭建模型走弯......
  • 大模型学习路径,非常详细收藏我这一篇就够了
    LLMFundamentals基础1.机器学习的数学基础在掌握机器学习之前,理解支撑这些算法的基本数学概念非常重要。线性代数:这是理解许多算法(特别是深度学习算法)的关键。主要概念包括向量、矩阵、行列式、特征值和特征向量、向量空间以及线性变换。微积分:许多机器学习算法涉......
  • ROS理论与实践学习笔记——3 ROS运行管理之ROS话题名称设置
        名称重映射是为名称起别名,为名称添加前缀,该实现比节点重名更复杂些,不单是使用命名空间作为前缀、还可以使用节点名称最为前缀。两种策略的实现途径有多种:(1)rosrun命令(2)launch文件(3)编码实现3.1rosrun设置话题重映射    rosrun名称重映射语法:rorun......