React脚手架create-react-app简介

简介: 【8月更文挑战第13天】React脚手架create-react-app简介

React 的常用脚手架

React 的脚手架有很多,以下是比较常用的几个:

  1. create-react-app:官方提供的脚手架,简单易用,可以快速创建一个基于 React 的项目。
  2. Next.js:基于 React 的服务器渲染框架,可以用于构建 SSR 应用和静态网站。
  3. Gatsby:静态网站生成器,可以生成高性能的静态网站,适合构建博客和电子商务网站。
  4. React Native CLI:用于构建原生移动应用程序的 React 框架。
  5. React Boilerplate:一款 React 应用程序脚手架,包含了 React、Redux、React Router 和 webpack 等相关库和工具。
  6. UMI:它是一个完整的企业级脚手架,提供了路由、插件、中间件、构建等方面的功能,可以满足不同项目的需求;
  7. Dva.js:它是一个基于 React 和 Redux 的数据流框架,可以用于快速构建复杂的单页应用。

    create-react-app

    create-react-app底层采用webapck作为构建工具 。

    项目创建

    使用 create-react-app 创建一个 React 项目的流程如下

  8. 全局安装create-react-app

    npm install -g create-react-app
    

    image.png

  9. 创建一个名为 my-react的项目

    其中 my-react 是你想要创建项目的名称,你可以把它替换成任何你想要的名称。

 create-react-app my-react

image.png

  1. 进入 my-react 目录 ,启动项目,在终端里执行命令 npm start,它会自动打开一个浏览器窗口并且显示你的React应用。或者浏览器输入http://localhost:3000/也可以访问
    npm start
    
    页面效果
    image.png
    这样你就成功创建了一个 React 应用,你可以继续开发和修改它,并且使用命令 npm run build 打包生产环境的应用。
    注,本文以为例来深入介绍脚手架,版本信息如下
    "dependencies": {
         
         
     "@testing-library/jest-dom": "^5.16.5",
     "@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"
    },
    

    脚手架目录

    项目创建完毕后,我们完整的项目结构如图。
    my-react
    ├─ .gitignore
    ├─ package-lock.json
    ├─ package.json
    ├─ public
    │  ├─ favicon.ico
    │  ├─ index.html
    │  ├─ logo192.png
    │  ├─ logo512.png
    │  ├─ manifest.json
    │  └─ robots.txt
    ├─ README.md
    └─ src
    ├─ App.css
    ├─ App.js
    ├─ App.test.js
    ├─ index.css
    ├─ index.js
    ├─ logo.svg
    ├─ reportWebVitals.js
    └─ setupTests.js
    

    public 目录

    public 目录用于存放一些不需要被打包的静态文件,例如:HTML 文件、图片、字体文件等
  • index.html: 是唯一需要存在的 HTML 文件,所有 React 组件都将被渲染在这个 HTML 文件内。
    ```typescript
    <!DOCTYPE html>






















- manifest.json: 是一个 Web App 的配置文件,包含有关应用程序的信息,例如名称、描述、图标等。
- favicon.ico: 是应用程序的图标文件,通常会在 Web 浏览器中显示。

                               ![image.png](https://cdn.nlark.com/yuque/0/2023/png/21865277/1683879322789-5d851a0b-68a3-4eb6-8ad3-0077b3532eae.png#averageHue=%23f7f7d2&clientId=u4b0a606b-63b5-4&from=paste&height=54&id=u39b2209b&originHeight=54&originWidth=304&originalType=binary&ratio=1&rotation=0&showTitle=false&size=3243&status=done&style=shadow&taskId=u48649ac2-a5f2-4363-8698-aafad9264d8&title=&width=304)

- robots.txt: 是一个标准的互联网协议,用于告诉搜索引擎哪些页面可以抓取,哪些不能抓取。
### src目录
src 文件夹是创建 React 应用程序时存放你的主要源代码的地方
```typescript
└─ src
   ├─ App.css
   ├─ App.js
   ├─ App.test.js
   ├─ index.css
   ├─ index.js
   ├─ logo.svg
   ├─ reportWebVitals.js
   └─ setupTests.js
  • reportWebVitals.js是一个网页性能监测配置文件,我们不用关注
  • setupTests.js是单元测试文件,我们同样不用关注
  • App.js是应用程序的根组件。
    ```typescript
    // src\App.js
    import logo from './logo.svg';
    import './App.css';

function App() {
return (



logo


Edit src/App.js and save to reload.



Learn React



);
}

export default App;

脚手架文件中的代码导出了一个函数式组件。

- App.css 是主应用程序的的样式文件。
- App.test.js 是应用测试文件可以忽略不管。
- index.js:应用程序的入口文件。这个文件渲染了 App 组件,并向其传递了一些配置。
```typescript
// 导入 React 库,这是必需的,因为我们的应用程序要用到 React 组件
import React from 'react';
// 导入了ReactDOM,这个库是将 React 组件渲染到页面中的关键所在。
import ReactDOM from 'react-dom/client';
// 这是应用程序的样式文件
import './index.css';
// 导入了 App 组件,这是我们的应用程序的主组件,通常包含其他组件
import App from './App';
// 单元测试文件
import reportWebVitals from './reportWebVitals';
// 
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>
);

// 性能监测,我们可以删除
reportWebVitals();

createRoot 方法返回一个对象,该对象具有 render 方法,用于渲染 React 应用。render 方法接受一个 React 元素作为参数,表示要渲染的组件树。
在这段代码中,我们使用 React.StrictMode 组件来启用 React 的严格模式。严格模式会检查代码中的一些问题,并在开发环境下警告我们。然后我们将 组件包裹在 StrictMode 组件中,表示该组件及其所有子组件都将启用严格模式。
最后,我们使用 render 方法将应用渲染到 root 元素中。这意味着 React 将会渲染 组件,并将其渲染的结果插入到 root 元素中。

相关文章
|
1月前
|
前端开发
create-react-app 如何使用 less/sass 和 react-css-modules?
本文详细介绍了在 create-react-app 项目中如何使用 less/sass 和 react-css-modules 来管理和应用样式。首先,通过安装相应依赖并配置 webpack 支持 less/sass;接着,介绍如何使用这些预处理器编写样式;最后,讲解了如何配置和使用 react-css-modules 实现样式的模块化管理,以及如何结合使用 less/sass 和 react-css-modules 提高开发效率和代码质量。
30 3
|
3月前
|
前端开发
React | 修改React脚手架的默认端口号?
React | 修改React脚手架的默认端口号?
156 64
|
2月前
|
XML 前端开发 JavaScript
react学习笔记一:入门级小白到脚手架(create-react-app)开发项目
这篇文章是React的学习笔记,覆盖了从React的基础用法到高级特性,包括组件化、状态管理、生命周期、虚拟DOM等主题,适合React初学者参考。
106 0
react学习笔记一:入门级小白到脚手架(create-react-app)开发项目
|
1月前
|
前端开发 JavaScript
手敲Webpack 5:React + TypeScript项目脚手架搭建实践
手敲Webpack 5:React + TypeScript项目脚手架搭建实践
|
2月前
|
移动开发 小程序 数据可视化
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
基于npm CLI脚手架的uniapp项目创建、运行与打包全攻略(微信小程序、H5、APP全覆盖)
336 3
|
3月前
|
前端开发 NoSQL MongoDB
React技术栈-基于react脚手架编写评论管理案例
这篇文章介绍了在MongoDB中使用sort和投影来对查询结果进行排序和限制返回的字段,通过具体的命令示例展示了如何实现这些操作。
55 6
React技术栈-基于react脚手架编写评论管理案例
|
3月前
|
XML 移动开发 前端开发
使用duxapp开发 React Native App 事半功倍
对于Taro的壳子,或者原生React Native,都会存在 `android` `ios`这两个文件夹,而在duxapp中,这些文件夹的内容是自动生成的,那么对于需要在这些文件夹中修改的配置内容,例如包名、版本号、新架构开关等,都通过配置文件的方式配置了,而不需要需修改具体的文件
|
4月前
|
前端开发 JavaScript
React的生命周期简介(十)
【8月更文挑战第15天】React的生命周期简介
51 2
React的生命周期简介(十)
|
3月前
|
前端开发 JavaScript
React技术栈-react的脚手架创建应用案例
本文介绍了如何使用React的官方脚手架工具create-react-app快速创建React项目,并展示了项目的目录结构和基本的代码文件,以及如何启动和运行React应用。
37 2
|
4月前
|
监控 安全 前端开发
【Azure 应用服务】App Service 运行状况健康检查功能简介 (Health check)
【Azure 应用服务】App Service 运行状况健康检查功能简介 (Health check)
106 0
下一篇
DataWorks