当前位置: 首页 > news >正文

跟着森老师学React Hooks(1)——使用Vite构建React项目

    Vite是一款构建工具,对ts有很好的支持,最近也是在前端越来越流行。

    以往的React项目的初始化方式大多是通过脚手架create-react-app(本质是webpack),其实比起Vite来构建,启动会慢一些。

    所以这次跟着B站的一个教程,使用Vite来构建一下React项目(Node版本16+,低了会有问题)。

     1.初始化一个node项目shop-cart。

       创建一个目录shop-cart,使用vscode打开,在目录下依次运行(用yarn 也行)

npm init -y
npm i vite -D

    2. 安装插件(vitejs针对react变量全局注入的插件)

npm i @vitejs/plugin-react -D

    3. 安装React核心依赖和axios,以及express

 npm i react react-dom react-router-dom axios express

    4.修改package.json的scripts为:

"scripts": {"dev": "vite","server": "nodemon ./server.js"},

   5. 根据如下文件结构去新建文件和文件夹(暂时忽略server.js,现在为空)

   6.文件细节

   vite.config.js:

import { defineConfig } from "vite";
import { resolve } from "path";import React from "@vitejs/plugin-react";export default defineConfig({plugins: [React()],resolve: {alias: [{find: "@",replacement: resolve(__dirname, "src"),},],},
});

   index.html:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Shop Cart</title>
</head>
<body><div id="root"></div><script type="module" src="./src/Main.jsx"></script>
</body>
</html>

   src/Main.jsx:

import { createRoot } from "react-dom/client";import App from "./App";const root = createRoot(document.querySelector("#root"));root.render(<App />);

    src/App.jsx:

export default function App() {return <div>Hello, React-Vite</div>;
}

  7.运行npm run dev,默认端口5173,浏览器localhost:5173访问:

至此成功

http://www.lryc.cn/news/222975.html

相关文章:

  • 强力解决使用node版本管理工具 NVM 出现的问题(找不到 node,或者找不到 npm)
  • Docker指定容器使用内存
  • 做什么数据表格啊,要做就做数据可视化
  • CSS特效003:太阳、地球、月球的旋转
  • 云计算的大模型之争,亚马逊云科技落后了?
  • 【form校验】3.0项目多层list嵌套
  • 公共功能测试用例
  • 【电路笔记】-并联RLC电路分析
  • ros1 client
  • 射频功率放大器应用中GaN HEMT的表面电势模型
  • CSP(Common Spatial Patterns)——EEG特征提取方法详解
  • 【Git】Git 学习笔记_操作本地仓库
  • 杂记(3):在Pytorch中如何操作将数据集分为训练集和测试集?
  • 【MySQL篇】数据库角色
  • c++ 信奥赛编程 2050:【例5.20】字串包含
  • 用dbeaver创建一个enum类型,并讲述一部分,mysql的enum类型的知识
  • Paste v4.1.2(Mac剪切板)
  • 事件绑定-回调函数
  • Makefile 总述
  • 写给新用户-Mac软件指南篇:让你的Mac更好用
  • 03运算符综合
  • LeetCode刷题--思路总结记录
  • Nodejs
  • 【面经】spring,springboot,springcloud有什么区别和联系
  • SpringBoot Kafka消费者 多kafka配置
  • git 标签相关命令
  • 我在Vscode学OpenCV 图像运算(权重、逻辑运算、掩码、位分解、数字水印)
  • 【 Docker: 数据卷挂载】
  • windows上的静态链接和动态链接的区别与作用(笔记)
  • MySQL和Postgresql数据库备份和恢复