React笔记(一)初识React

这篇具有很好参考价值的文章主要介绍了React笔记(一)初识React。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、React概述

1、什么是react

react的官网:React

用于构建用户界面的 JavaScript 库,它也是一个渐进式的用于构建用户界面的javascript框架

2、主要特征
  • 声明式:使用原生JS编写的页面存在着开发效率低下、性能较差的情况,使用react大家就向编写HTML的一样编写页面

  • 组件化:使用组件的思想编写程序是现代企业开发的一种思路、让组件达到复用效果、大大提高开发效率,让项目具有可维护性和扩展性。

  • 一次学习,跨平台编写

    • 使用react不仅能够编写WEB应用

    • react还可以编写移动应用(react-native)

    • react完成VR(虚拟现实)(react 360)

3、React框架的发展史

React主要是在为了构架Instagram,2013年5月的时候,把React框架开源了,React整个生态,可以做到编写一套代码,可以运行到多端,除了可以开发web应用之外,也可以开发移动端应用等。

二、使用CRA构建React工程化项目

1、使用CRA创建React项目

使用create-react-app脚手架来完成react项目的创建,这里使用npx命令来进行创建

npx create-react-app 项目名称
2、目录结构
|-node-modules:第三方依赖包
|-public:资源文件
   |-index.html:页面出口文件
|-src:源文件
   |-index.js:项目入口文件
|-package.json:项目描述文件

创建完成之后,我们来看package.json中相关配置

2.1、包依赖
  • react:react框架的核心包

  • react-dom:react视图渲染的核心包(通过React构建的WEB应用)

  • react-scripts:包含运行和打包react应用程序的所有脚本及配置

使用create-react-app 创建的项目默认是无法修改其内部的webpack配置的,不像vue-cli那样可以通过一个配置文件修改,这是为了让项目目录看起来干净简洁,把项目的打包规则以及相关的插件/loader等都隐藏到了node_modules目录下,react-scripts是脚手架中对打包命令的一种封装,基于它打包,会调用node_modules中的webpack等进行处理。

2.2、scripts
  • start:"react-scripts start":开发环境:在本地启动web服务

  • "build": "react-scripts build":打包命令,打包的内容输出到dist目录下

  • "test": "react-scripts test":单元测试命令

  • "eject": "react-scripts eject":暴漏webpack配置规则

2.3、browserslist

浏览器兼容性规则

"browserslist": {
    "production": [
      ">0.2%",    全球超过0.2%的人使用的浏览器
      "not dead",  还存活着的
      "not op_mini all" 不考虑op_mini浏览器的全部版本的兼容性
    ],
    "development": [
      "last 1 chrome version",表示兼容到谷歌的上一个版本
      "last 1 firefox version",表示兼容到火狐的上一个版本
      "last 1 safari version" 表示兼容到safari的上一个版本
    ]
  }

Browserslist:可以在这个网站比较方便查看目标浏览器范围百分比

三、yarn包管理器

1、简介

Yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具 , yarn 包管理器,和 npm 的作用一模一样。都是用来管理项目中 node_modules 目录中的所有依赖包 Yarn 是为了弥补 npm 的一些缺陷而出现的

yarn的官方: Yarn 中文文档

2、安装yarn

在终端上执行如下命令进行全局安装yarn

npm i -g yarn

安装完成之后,可以执行如下命令查看yarn的版本

yarn --version
3、yarn命令使用
3.1、初始化项目
yarn init
3.2、安装依赖包
yarn add [package]    //下载最新版本
yarn add [package]@[version] //下载具体的版本
yarn add [package] --dev //下载的是运行时的依赖
yarn global add [package] //全局下载
3.3、移除依赖包
yarn remove [package]
3.4、安装项目的全部依赖
yarn
或者
yarn install
3.5、配置镜像

设置yarn的淘宝镜像

yarn config set registry https://registry.npm.taobao.org

查看镜像源

yarn config get registry

配置node-sass镜像

yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass
3.6、查看全局安装的位置
yarn global dir

四、使用craco插件进行webpack的配置

如果要修改create-react-app脚手架的默认配置,有如下方案

  • 通过执行yarn eject命令,释放react-scripts中的所有配置到项目中,但这是一个不可逆的操作,同时也会失去CRA带来的便利和后续升级

  • 通过第三方库来修改,比如@craco/craco

1、craco插件的安装
  • 安装修改CRA的配置的包

yarn add -D @craco/craco
  • 修改packge.json中的脚本命令

 "scripts": {
    "start": "craco start",
    "build": "craco build",
    "test": "craco test",
    "eject": "react-scripts eject"
  }
  • 在项目的根目录中创建craco的配置文件(craco.config.js),用于修改默认配置

module.exports={
  	
}
2、修改项目的端口

在craco.config.js中配置如下

process.env.PORT=3002
3、配置别名
  • 在项目的根目录中创建craco的配置文件(craco.config.js),并在配置中配置别名

const path=require('path')
module.exports={
    webpack:{
        alias:{
            '@':path.resolve(__dirname,'src')
        }
    }
}
  • 在代码中,就可以通过@来表示src目录的绝对路径

  • 重启项目,让配置生效

3、别名路径提示

在项目的根目录下创建jsconfig.json配置文件,并在项目中添加如下提示

{
    "compilerOptions": {
         "baseUrl": "./",
         "paths": {
            "@/*":["src/*"]
         }
    }
}

五、项目初始化

1、安装scss
2、安装px-to-vw插件
  • 在vscode的扩展中搜索"px-to-vw",安装

  • 在vscode---->设置---->输入px-to-vw---->在里面输入设计稿宽度,即可通过插件进行单位自动转化

    React笔记(一)初识React,react.js,笔记,前端

  • 按住键盘alt + z快捷键,可以看到px单位被自动转换为vw单位了

3、重置样式
  • 在Normalize.css: Make browsers render all elements more consistently.官网上下载normalize.css

  • 在assets中定义normalize.css,将下载好的normalize.css内容复制进来

  • 然后在App.scss页面中引入文章来源地址https://www.toymoban.com/news/detail-679662.html

@import url('./assets/reset.css');

到了这里,关于React笔记(一)初识React的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端刷新页面的五种方法(含原生js、vue和react)

    1、window.history.go(0)方法 2、location.reload()方法 3、location.href=location.href方法 4、vue-router方法 5、react-router方法

    2024年02月16日
    浏览(47)
  • 前端开发笔记 | React Hooks子组件和父组件交互

    前端开发框架目前比较常用的就是react、vue等,其中使用React Hooks 带来了不少的好处,今天来聊聊React Hooks开发方式下,子组件和父组件的交互。 子组件定义 父组件调用子组件 父组件定义 子组件中刷新父组件按钮文案 实际效果:点击子组件中“改变父组件按钮”,父组件中

    2024年02月11日
    浏览(81)
  • 【前端】html2canvas生成图片空白排查data:;(js vue react uniapp)

    因为要做一个分享图,就用到了html2canvas,一开始是好好的,今天随便测了下,发现图片显示不出来了。打印了下,生成的图片链接变成了 data:; 。后面一步一步地排查,发现是页面内容太多了,删减一点内容就能显示出来。然后我又去认真看了下html2canvas的各个参数,发现可

    2024年02月03日
    浏览(56)
  • React学习笔记(番外一)——video.js视频播放组件的入门及排坑经历

    很久没有静下心写博客了。近段时间接到一个任务,前端页面要加上视频播放功能。实现加排坑前后花了三天时间(别问我问什么这么久😂),觉得还是有必要记录一下的。 这一部分有必要写在最前面,避免你看了一长串安装、引入、代码,然后发现自己想要播放的视频格

    2024年02月02日
    浏览(47)
  • react+vue 前端国密算法sm2、sm3 、sm4的js ts实现

    1. 简单介绍下SM2 和 SM3 SM2 算法:是一种公钥加密算法,它的密钥长度为 256 位,安全性较高。可用于数字签名、密钥协商等场景。 SM3 算法:是一种对称加密算法,用于消息摘要和数字签名等场景。它的密钥长度为 256 位,安全性较高。SM3 算法与 SM2 算法相互配合,提高了整体

    2024年01月19日
    浏览(41)
  • 初识react

    初识react 第一步就给我出个问题版本太低 https://www.cnblogs.com/gslgb/p/16585233.html https://blog.csdn.net/xiangshiyufengzhong/article/details/124193898 第二个问题 便利生成dom 需要绑定key 不要总想着加冒号这不是vue 第三个问题 我p标签包裹 MapList组件 MapList中又有div标签 p下边不能有div标签 易错点

    2024年02月16日
    浏览(23)
  • 简介:在这篇教程中,我们将使用React.js框架创建一个简单的聊天机器人的前端界面,并利用Dialogflo

    作者:禅与计算机程序设计艺术 介绍及动机 聊天机器人(Chatbot)一直是互联网领域中的热门话题。而很多聊天机器人的功能都依赖于人工智能(AI)技术。越来越多的企业希望拥有自己的聊天机器人系统,从而提升自己的竞争力。为此,业界也出现了很多基于开源技术或云

    2024年02月06日
    浏览(57)
  • 初识 React:安装和初步使用指南

    在当今的 Web 开发领域,React 已经成为了一个备受推崇的技术。它的组件化、灵活性和高效性使得它成为了构建现代 Web 应用的首选工具之一。本文将深入探讨 React 的一些关键特性以及它为开发者们带来的诸多好处。在本篇博客中,我们将介绍如何安装 React 并进行初步使用,

    2024年04月25日
    浏览(29)
  • 初识React/JSX/组件/state/受控组件

                                               

    2024年02月12日
    浏览(60)
  • 初识React: 基础(概念 特点 高效原因 虚拟DOM JSX语法 组件)

    React是一个由Facebook开源的JavaScript库,它主要用于构建用户界面。React的特点是使用组件化的思想来构建界面,使得代码的可复用性和可维护性大大提高。React还引入了虚拟DOM的概念,减少了对真实DOM的直接操作,加快了渲染速度。 React使用虚拟DOM,将页面的渲染操作转化为

    2024年02月14日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包