Django5+React18前后端分离开发实战13 使用React创建前端项目

embedded/2024/10/22 14:37:28/

先将nodejs的版本切换到18:
在这里插入图片描述

接着,创建项目:

npx create-react-app frontend

在这里插入图片描述

接着,使用webstorm打开这个刚创建的项目:
在这里插入图片描述

添加一个npm run start的配置:
在这里插入图片描述

通过start启动服务:
在这里插入图片描述

在这里插入图片描述

浏览器访问:http://localhost:3000/

在这里插入图片描述

安装bootstrap

执行命令安装:

yarn add react-bootstrap bootstrap

在这里插入图片描述

安装react-router

这里我们安装5版本:

yarn add react-router-dom@5

在这里插入图片描述

整理依赖

修改 package.json ,移除不必要的依赖:

{"name": "frontend","version": "0.1.0","private": true,"dependencies": {"bootstrap": "^5.3.3","react": "^18.3.1","react-bootstrap": "^2.10.2","react-dom": "^18.3.1","react-router-dom": "5","react-scripts": "5.0.1","web-vitals": "^2.1.4"},"scripts": {"start": "react-scripts start","build": "react-scripts build"},"browserslist": {"production": [">0.2%","not dead","not op_mini all"],"development": ["last 1 chrome version","last 1 firefox version","last 1 safari version"]}
}

之后执行命令更新依赖:

yarn

优化代码

删除不必要的文件,将App.js修改如下:

function App() {return (<div className="App">你好,React18</div>);
}export default App;

在这里插入图片描述

index.js也需要修改:

import React from 'react';
import ReactDOM from 'react-dom/client';
import App from './App';
import reportWebVitals from './reportWebVitals';const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<React.StrictMode><App/></React.StrictMode>
);
reportWebVitals();

此时,再次访问:http://localhost:3000/

在这里插入图片描述


http://www.ppmy.cn/embedded/42801.html

相关文章

【面试干货】事务的并发问题(脏读、不可重复读、幻读)与解决策略

【面试干货】事务的并发问题&#xff08;脏读、不可重复读、幻读&#xff09;与解决策略 一、脏读&#xff08;Dirty Read&#xff09;二、不可重复读&#xff08;Non-repeatable Read&#xff09;三、幻读&#xff08;Phantom Read&#xff09;四、总结 &#x1f496;The Begi…

JVM学习-堆空间(二)

年轻代与老年代 存储在JVM中的Java对象被划分为两类 一类是生命周期较短的瞬时对象&#xff0c;这类对象的创建和消亡都非常迅速一类对象的生命周期很长&#xff0c;在某些极端情况下还能够与JVM的生命周期保持一致 Java堆区进一步细分的话&#xff0c;分为年轻代(YoungGen)和…

深度学习之基于Tensorflow卷积神经网络验证码识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与目标 随着互联网的快速发展&#xff0c;验证码作为一种有效的防止自动化攻击和用户身份验证的手段&…

Python线程

Python线程 1. 进程和线程 先来了解下进程和线程。 类比&#xff1a; 一个工厂&#xff0c;至少有一个车间&#xff0c;一个车间中至少有一个工人&#xff0c;最终是工人在工作。 一个程序&#xff0c;至少有一个进程&#xff0c;一个进程中至少有一个线程&#xff0c;最终…

【2024软考】史上最全!软考刷题+解析大合集(9万字全手工打,货真价实)

计算机基础知识 1.中断向量表用来保存各个中断源的中断服务程序的入口地址。当外设发出中断请求信号&#xff08;INTR&#xff09;以后&#xff0c;由中断控制器&#xff08;INTC&#xff09;确定其中断号&#xff0c;并根据中断号查找中断向量表来取得其中断服务程序的入口地…

基于地理坐标的高阶几何编辑工具算法(5)——合并相交面

文章目录 工具步骤应用场景算法输入算法输出算法示意图算法原理 工具步骤 选中一个面&#xff0c;点击“合并相交面”工具&#xff0c;选择其他相邻面&#xff0c;空格执行合并。 应用场景 用于将相邻或相交的同类型几何面进行合并&#xff0c;达到综合效果。 算法输入 待…

手机怎么恢复照片?2个数据恢复教程详解!

“安卓手机自带相机录的视频和拍的照片被误删了&#xff0c;照片没有同步到云盘或百度网盘&#xff0c;学习资料很重要&#xff0c;折腾了一天&#xff0c;不知道该怎么找回。有没有恢复的方法呢&#xff1f;求告知&#xff0c;谢谢大家&#xff01;” 无论是珍贵的家庭瞬间、…

C语言之指针进阶(3),函数指针

目录 前言&#xff1a; 一、函数指针变量的概念 二、函数指针变量的创建 三、函数指针变量的使用 四、两段特殊代码的理解 五、typedef 六、函数指针数组 总结&#xff1a; 前言&#xff1a; 本文主要讲述C语言指针中的函数指针&#xff0c;包括函数指针变量的概念、创建…