重学前端 - react 项目第一节:创建react 项目
重学前端 - react 项目第一节:创建react 项目
- 简介:之前一直使用的都是 vue 全家桶开发项目,现在在新的项目上开始使用react开发。
现在开始在重新学习一下 react 相关技术。
本项目使用:- react 18.1.0
- react-router-dom 6.3.0 管理路由
- redux 全局状态管理
- typescript 加强
- Ant Design 4.20.4 全局 UI
- axios 网络请求
下面开始我们学习 react
创建项目
// 跟着控制提示选择自己项目配置项
npx create-react-app <项目名称>
目录结构
├── public
└── src
├── App.css
├── App.js
├── App.test.js
├── components // 公共组件
├── index.css
├── index.js
├── logo.svg
├── reportWebVitals.js
├── route // 自己新建 route 管理文件夹 方便后续对路由进行统一管理
├── setupTests.js
└── views // 页面
开始运行项目
// 进入新建好的项目
cd <新建的项目名称>
// 开始命令
npm start
// 会直接打开默认浏览器,或者访问http://localhost:3000 就会开间 react logo
配置路由
npm install react-router-dom
页面添加路由配置
- 新建 Home.jsx/Home/index.jsx 文件
import * as React from "react";
class Home extends React.Component{
constructor(porps) {
super(porps);
this.state = {
message: '首页'
}
}
render() {
return <div>{this.state.message}</div>;
}
}
export default Home;
- 新建 Login 登陆页面
import React from "react";
class Login extends React.Component{
render() {
return (
<div> 登陆 </div>
)
}
}
export default Login;
- 编辑 App.js
import './App.css';
import {BrowserRouter, Routes, Route} from "react-router-dom";
import Home from "../views/Home";
import Login from "../views/Login";
function App() {
return (
<BrowserRouter>
<Routes>
<Route path={'/'} element={<Home/>} />
<Route path={'/login'} element={<Login/>}/>
</Routes>
</BrowserRouter>
);
}
export default App;
- 配置成功访问 http://localhost:3000 会直接看到页面上显示 Home
或者 http://localhost:3000/login 页面显示 登陆,到此路由配置完成
下一节 配置 typescript + scss
关注公众号: 影的记忆 同步更新
重学前端 - react 项目第一节:创建react 项目的更多相关文章
- 重学前端 --- Promise里的代码为什么比setTimeout先执行?
首先通过一段代码进入讨论的主题 var r = new Promise(function(resolve, reject){ console.log("a"); resolve() ...
- 第一章 创建WEB项目
第一章 创建WEB项目 一.Eclipse创建WEB项目 方法/步骤1 首先,你要先打开Eclipse软件,打开后在工具栏依次点击[File]>>>[New]>>&g ...
- 重学前端--js是面向对象还是基于对象?
重学前端-面向对象 跟着winter老师一起,重新认识前端的知识框架 js面向对象或基于对象编程 以前感觉这两个在本质上没有什么区别,面向对象和基于对象都是对一个抽象的对象拥有一系列的行为和状态,本质 ...
- 利用 Create React Native App 快速创建 React Native 应用
本文介绍的 Create-React-Native-App 是非常 Awesome 的工具,而其背后的 Expo 整个平台也让笔者感觉非常的不错.笔者目前公司是采用 APICloud 进行移动应用开发 ...
- 【重学Node.js 第5篇】部署项目到腾讯云服务器
课程介绍看这里:https://www.cnblogs.com/zhangran/p/11963616.html 项目github地址:https://github.com/hellozhangran ...
- [Vue音乐项目] 第一节 环境搭建
1.Node安装 登录官网,下载最新版本并安装: 在我的电脑内,执行以下操作:右键->属性->高级->环境变量->系统变量->path 查看是否有node的安装路径,没有 ...
- 重学JAVA基础(四):线程的创建与执行
1.继承Thread public class TestThread extends Thread{ public void run(){ System.out.println(Thread.curr ...
- idea:spring initializr无web勾选,maven方式搭建springboot项目。jdk7创建springboot项目的版本不兼容问题。
一.idea 使用spring initializr不选择web搭建springboot项目 1.file => new => project 2.直接next到finish结束. 3.完 ...
- 【OF框架】使用OF框架创建应用项目
开始:准备工作 开发环境已经安装Visual Studio,包含Web开发负载.Python开发负载.NodeJs开发负载 开发环境已经安装Visual Studio Code 开发环境已经安装Nod ...
- tfs中如何创建团队项目及如何操作团队项目
创建团队项目集合 tfs server管理控制台\团队项目集合页面.选择'创建集合'链接,按向导即可创建项目集合. 创建团队项目 创建好团队项目集合后,就要开始创建团队项目了. 进入vs,连接上tfs ...
随机推荐
- Android项目架构设计深入浅出
简介:本文结合个人在架构设计上的思考和理解,介绍如何从0到1设计一个大型Android项目架构. 作者 | 璞珂 来源 | 阿里技术公众号 前言:本文结合个人在架构设计上的思考和理解,介绍如何从 ...
- 阿里云 Serverless 助力企业全面拥抱云原生
简介:相信随着云计算的发展,Serverless 将成为云时代默认的计算范式,越来越多的企业客户将会采用这个技术. 作者:洛浩 Serverless 应用引擎的组件架构 最早的时候,大家设计软件一般 ...
- [Go] flag package 指南: 命令行参数标记的解析
flag 是 Golang 的官方包. 支持用法有三种,不同之处是二三两种用法是 Var() 函数可以绑定 flag 到一个变量上. 直接调用指定类型的函数有多种,如 flag.String(), B ...
- [PHP] Laravel cast array 数据库存 json 时的 unicode 编码问题
在模型上设置 accessor 和 mutator,将数组转为 json,并设置 json 选项. class User extends Model { public function setOpti ...
- win10 uwp 使用 XamlTreeDump 获取 XAML 树元素内容
本文来安利大家 XamlTreeDump 库,通过这个库可以将 XAML 树上的元素转换为 json 字符串,可以用来进行 UI 单元测试 开始之前先通过 NuGet 工具安装 XamlTreeDum ...
- 不只有 Spring,这四款 Java 基础开发框架同样值得关注! 审核中
Java 开发不只有 Spring ,今天给大家推荐几个同样优秀的 Java 基础开发框架,为日常项目开发提供更多的选择.答应我,请不要再叫我 Spring 小子了,好吗? 项目概览: Guice: ...
- M9K内存使用教程
M9K内存使用教程 M9K内存是Altera内嵌的高密度存储阵列.现代的FPGA基本都包含类似的不同大小的内存. M9K的每个块有8192位(包含校验位实际是9216位).配置灵活.详细了解M9K可参 ...
- 16、数据库加固-mysql 加固
1.修改 DBA 登录密码 shell 下执行: mysqladmin -u root password 非首次修改:mysqladmin -u root password -p原密码 在 mysql ...
- Typecho博客网站迁移:MySQL ➡️ MarialDB
目录 1. 引言 2. Typecho的自定义配置迁移 3. 数据库迁移:MySQL- > MarialDB 3.1 在原服务器中备份并导出数据库文件 3.2 将"backupdb.s ...
- supervisor 的安装与使用
学习视频: https://www.bilibili.com/video/BV1Vi4y147Fm?from=search&seid=8875783979034550201 更多说明: htt ...