使用React18+Ts创建项目

1. 创建项目

首先,使用create-react-app工具创建一个新的React项目:

复制代码
npx create-react-app 项目名 --template typescript

2. 安装依赖项

使用脚手架创建项目后,自带react-dom等依赖项,但react中的所用的路由方法是react-router-dom中。

复制代码
npm install  react-router-dom 

3. 文件结构

默认情况下,create-react-app模板会自动生成一些文件和文件夹,这些文件和文件夹包括:

复制代码
- node_modules
- public
    |- index.html
    |- favicon.ico
- src
    |- App.css
    |- App.tsx
    |- index.tsx
    |- logo.svg
    |- react-app-env.d.ts
    |- setupTests.ts
- package.json
- README.md
- tsconfig.json
  • node_modules:存储所有的项目依赖项。
  • public:存储静态资源文件,例如 index.html 和 favicon.ico 文件。
  • src:存储应用程序的源代码。
  • App.css 和 App.tsx:是 React 组件的样式和逻辑。
  • index.tsx:是应用程序的入口。
  • tsconfig.json:存储 TypeScript 配置信息。

4. 配置样式

完成上述步骤后,我们还可以使用sass,less等预处理器来处理样式

复制代码
npm install sass stylelint stylelint-config-standard-scss --D

这样我们就可以直接在项目中使用sass样式。

5.配置路由

新建一个router文件夹,里面创建index.tsx文件

javascript 复制代码
import { lazy } from "react";
import { RouteObject } from "react-router-dom";
import Home from "../views/home";

const New = lazy(() => import("../views/editor/new") as any);
const Article = lazy(() => import(`../views/Article/[id]`) as any);
const routes: RouteObject[] = [
  {
    path: "/",
    element: <Home />,
  },
  {
    path: "/new",
    element: <New />,
  },
  {
    path: "/article/:id",
    element: <Article />,
  }
];

export default routes;

在App.tsx文件夹下使用路由

在根目录下的index.tsx包裹路由

运行成功后,你应该可以通过 http://localhost:3000 访问到你的应用程序。

最后放一个版本信息

相关推荐
陈随易2 小时前
pm2 替代品,nodejs&bun 线上部署必备工具
前端·后端·程序员
MC皮蛋侠客2 小时前
Tauri 2.x 系列(八):与其他语言结合——Sidecar、服务、FFI 与插件的选择
rust·tauri
丘山一郎3 小时前
Spring 中的IOC控制反转 和DI依赖注入
java·后端·spring
码视野3 小时前
基于 Spring Boot + Vue3 的【大学英语四六级 (CET-4/6) 作文智能评分与句式润色系统】设计与实现(含PRD/三端高保真源码/大屏)
java·前端·人工智能·spring boot·后端·vue3
MetaLite3 小时前
Spring-AOP自调用为什么失效-AopContext真能解决吗
java·后端·spring
m0_547486663 小时前
《JavaScript核心原理 》全套PPT课件2026
开发语言·javascript·ecmascript
MC皮蛋侠客3 小时前
Tauri 2.x 系列(五):调用系统 API——官方插件、Rust crate 与原生能力
开发语言·后端·rust
布莱克6054 小时前
软中断和硬中断的区别
开发语言·操作系统
whcyhhh5 小时前
头歌实践教学平台:数据科学与大数据技术导论(十二)
大数据·开发语言·python·数据清洗
Profile排查笔记5 小时前
指纹浏览器怎么设置 IP?代理配置、检测与排错流程
前端·人工智能·后端·自动化