【React】02.create-react-app基础操作

这篇具有很好参考价值的文章主要介绍了【React】02.create-react-app基础操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


2023年最新珠峰React全家桶【react基础-进阶-项目-源码-淘系-面试题】

当前以及未来的开发,一定是:组件化开发

  • 有利于团队协作开发
  • 便于组件的复用:提高开发效率、方便后期维护、减少页面中的冗余代码

如何划分组件

  • 业务组件:正对项目需求封装的
    • 普通业务组件:没有啥复用性,只是单独拆出来的一个模块
    • 通用业务组件:具备复用性
  • 功能组件:适用于多个项目(例如:UI组件库中的组件)
    • 通用功能组件

因为组件化开发,必然会带来“工程化”的处理
也就是基于webpack等工具(vite/ rollup/ turbopack)
- 实现组件的合并、压缩、打包等
- 代码编译、兼容、校验。。。
- 。。。

React的工程化/组件化开发

可以基于webpack自己去搭建一套工程化打包的架子,但是这样非常的麻烦复杂,React官方提供了脚手架:create-react-app

脚手架:基于它创建项目,默认就把webpack的打包规则已经处理好,把一些项目需要的基本文件也创建好。

create-react-app基础运用

运用

安装脚手架

npm i create-react-app -g  (mac前面要设置sudo)

检查安装情况(显示版本号即安装成功)

  create-react-app --version

基于脚手架创建React工程化的项目

create-react-app 项目名称

项目名称要遵循npm包命名规范:使用”数字、小写字母、_“命名

默认项目目录
|- node_modules
|- src:所有后续编写的代码,几乎都放在SRC下(打包时,一般只对这个目录下的代码进行处理)
|- index.js
|- public:放页面模板
|- index.html
|- package.json
|- …

注:项目目录结构出现package-lock.json,则代表是npm安装,改成yarn安装需删除package-lock.json、node_modules后重新执行yarn install

react常用版本

很早之前是15版本(太早了)
16版本:一些项目用的最多的
17版本:最大的升级就是看不出升级(语法没变啥,只是底层处理机制上升级了)

18版本:新版本(机制和语法上都有区别)

脚手架默认安装18版本

一个React项目中,默认会安装

  • react:React框架的核心
  • react-dom:React试图渲染的核心(基于React构建WebApp-HTML页面)
  • react-native:构建和渲染App的
  • react-scripts:脚手架为了让项目目录看起来干净一些,吧webpack打包的规则及香港的插件/LOADER等都隐藏到了node_modules目录下,react-scripts就是脚手架中自己对打包命令的一种封装,基于它打包,会调用node_modules中的webpack等进行处理
  • web-vitals:性能检测工具

package.json

{
  "name": "reactdemo",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^5.17.0",
    "@testing-library/react": "^13.4.0",
    "@testing-library/user-event": "^13.5.0",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-scripts": "5.0.1",
    "web-vitals": "^2.1.4"
  },
  # 打包命令是基于react-scripts处理
  "scripts": {
    "start": "react-scripts start", # 开发环境:在本地启动web服务器,预览打包内容
    "build": "react-scripts build", # 生产环境:打包部署,打包的内容输出到dist目录中
    "test": "react-scripts test", # 单元测试
    "eject": "react-scripts eject" # 暴露webpack配置规则(因为我想修改默认的打包规则)
  },
# 对webpack中ESLint词法检测的相关配置;词法检测:
# - 词法错误(不符合标准规范)
# - 符合标准,代码本身不会报错,但是不符合ESLint的检测规范
# const num=20; num声明了但没有使用
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  # 基于browserslist规范,设置浏览器兼容情况,
  # 1.postcss-loader+autoprefixer会给CSS3设置相关的前缀
  # 2.babel-loader 会把ES6编译为ES5
  "browserslist": {
    "production": [
      ">0.2%", # 使用率超过0.2%的浏览器
      "not dead", # 不考虑IE
      "not op_mini all" # 不考虑欧朋浏览器
    ],
    # 默认不兼容低版本和IE浏览器的
    "development": [
      "last 1 chrome version", # 谷歌只考虑最后一个版本
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

src目录删除多余文件,仅保留index.js
【React】02.create-react-app基础操作,React,react.js,前端,前端框架

public目录删除多余文件
【React】02.create-react-app基础操作,React,react.js,前端,前端框架文章来源地址https://www.toymoban.com/news/detail-735090.html

# 启动
yarn start
# 打包
yarn build

到了这里,关于【React】02.create-react-app基础操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • react快速开始(三)-create-react-app脚手架项目启动;使用VScode调试react

    create-react-app(以下简称cra)作为react官方提供的脚手架工具,是目前生成react项目一个非常常用和主流的工具。很多企业级的应用搭建也是基于这个脚手架工具上二次开发 create-react-app脚手架 生成的 package.json中 scripts如下: 我们看到分别是项目的启动开发环境,构建,测试的

    2024年02月10日
    浏览(42)
  • react create-react-app v5 从零搭建(使用 npm run eject)

    好久没用 create-react-app做项目了,这次为了个h5项目,就几个页面,决定自己搭建一个(ps:mmp 好久没用,搭建的时候遇到一堆问题)。 我之前都是使用 umi 。后台管理系统的项目 使用 antd-pro框架。实际上antd-pro 是基于umi搭建集成的框架。里面封装好了各种东西,开箱即用。

    2024年02月07日
    浏览(32)
  • react create-react-app v5配置 px2rem (暴露 eject方式)

    create-react-app v5 “react”: “^18.2.0” “postcss-plugin-px2rem”: “^0.8.1” 我这个方式是 npm run eject 暴露 webpack配置的方法 1.安装 postcss-plugin-px2rem 和 lib-flexible (注意这里安装 postcss-px2rem、px2rem这类都行,都是 px2rem衍生的库,不过不同的库具体配置不一样,建议查看文档具体有哪些

    2024年02月07日
    浏览(28)
  • react create-react-app v5配置 px2rem (不暴露 eject方式)

    create-react-app v5 “react”: “^18.2.0” “postcss-plugin-px2rem”: “^0.8.1” 不暴露 eject 配置自己的webpack: 1.下载react-app-rewired 和 customize-cra-5 2.在项目根目录创建一个config-overrides.js 文件 3.安装 postcss-plugin-px2rem 和 lib-flexible (注意这里安装 postcss-px2rem、px2rem这类都行,都是 px2rem衍生

    2024年02月07日
    浏览(27)
  • 使用 create-react-app 搭建项目ts+less+antd+redux+router+eslint+prettier+axios

    当前市面上有很多前端框架或者模板、如:umi、dva、antd-design-pro、create-react-app 等一些框架或者模板。 create-react-app 是 react 官方提供的,相对来说比较干净一些。 此项目是在 create-react-app 的基础上进行搭架、项目采用 ts 语法 项目整体上会添加上以下功能: 完整项目代码 传

    2024年02月03日
    浏览(32)
  • 章节 1:入门React.js -《React.js手把手教程:从初学者到实战高手》- 第一部分:React.js基础

    《React.js手把手教程:从初学者到实战高手》 第一部分:React.js基础 在我们开始探索 React.js 的奇妙世界之前,让我们先来认识一下这个“ 人人都在谈论 ”的家伙。你可以把 React.js 想象成是一个全栈工程师的一大碗甜品,不仅好吃,还可以让你的应用更美味!那么,究竟什么

    2024年02月11日
    浏览(33)
  • 【前端知识】React 基础巩固(三十六)——RTK中的异步操作

    引入RTK中的createAsyncThunk,在extraReducers中监听执行状态 在界面中引入所需的异步操作Action 查看运行结果 extraReducer还可以传入一个函数,函数接受一个builder参数: 查看运行结果,与之前的写法结果一致

    2024年02月15日
    浏览(37)
  • 【前端知识】React 基础巩固(三十四)——组件中的异步操作及优化

    通过组件的生命周期来完成网络请求,网络请求的异步代码直接放在组件中 通过redux来管理异步网络请求 在store中引入中间件 redux-thunk 构建 fetchHomeMultidataAction ,将原本在组件中的异步请求代码放入到actionCreators.js中 改写原来的category.jsx,派发异步请求的dispatch 查看运行结果

    2024年02月15日
    浏览(52)
  • 前端react入门day02-React中的事件绑定与组件

    (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 React中的事件绑定 React 基础事件绑定 使用事件对象参数  传递自定义参数  同时传递事件对象和自定义参数  React中的组件  组件是什么 React组件 useState  修改状态的规

    2024年02月06日
    浏览(69)
  • react ant add/change created_at

    1.引入ant的 Table 2.获得接口的数据的时候增加上创建时间 3.对接口的数据进行处理 这样会显示数据: 需要修改为北京时间: 最后做出这样的修改:(显示为北京时间:2023/7/24 15:10:38)  

    2024年02月14日
    浏览(24)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包