React搭建Vite项目及各种项目配置

news2024/9/20 20:24:38

 1. 创建Vite项目

在操作系统的命令终端,输入以下命令:

yarn create vite

 输入完成以后输入项目名称、选择开发框架,选择开发语言,如下图所示,即可完成项目创建。

注意事项:

1. Node版本必须符合要求,否则安装过程中会提示版本不对;

2. 由于上面是使用的yarn来安装的,所以需要首先通过npm来全局安装yarn;

项目创建成功以后通过以下命令安装依赖:

yanr install --save

然后通过以下命令启动项目:

yarn dev

启动成功后就可以通过生成的访问地址在浏览器里访问了。

项目在安装依赖过程中要是特别慢的话,可以修改镜象源。

要是通过npm安装的话,只需要通过将上面命令中的yarn换成npm即可。

上面的是全局修改镜象源,要是只想针对这个项目修改镜象源的话,可以在项目的根目录下添加配置文件,yarn安装添加.yarnrc文件,npm安装添加.npmrc文件,编辑文件内容如下:

registry "https://registry.npm.taobao.org"

如果项目后续安装依赖比较多,或是有微服务开发建议使用pnpm来安装。

2. 编辑器配置

为了保证不同的开发者在不同编辑器上开发同一个项目编辑格式一样的,我们需要在在项目的根目录下创建一个叫.editorconfig的文件,注意前面有个点。

上面图片中的配置内容如下,方便大家复制粘贴。

# https://editorconfig.org       # 文件官方网站
root = true   					 # 根目录的文件

[*]								 # 针对文件范围
charset = utf-8					 # 文件字符格式
indent_style = tab		         # 行头缩进类型
indent_size = 4					 # 行头缩进大小
end_of_line = lf                 # 结尾换行标志
insert_final_newline = true      # 结尾插入新行
trim_trailing_whitespace = true  # 修剪尾随空格

需要注意的时,在Webstorm中会自动读取配置文件,而VS Code编辑器里面,需要安装以下插件才可以读取配置文件。

3. 格式化配置 

为了代码风格整体保持一致,需要安装格式化代码工具,安装命令如下:

yarn add prettier -D

如下图所示,即为安装成功。

在根目录下创建配置文件.prettierrc.cjs,添加配置代码。

module.exports = {
    // 每行最多的列
    printWidth:120,
    // 用制表符缩进
    useTabs:false,
    // 行头缩进宽度
    tabWidth:4,
    // 结尾是否分号
    semi:false,
    // 是否用单引号
    singleQuote:true,
    // JSX中单引号
    jsxSingleQuote:true,
    // 箭头函数括号
    arrowParens:'avoid',
    // 符号文字空格
    bracketSpacing:true,
    // 是否尾随逗号
    trailingComma:'none'

}

为了实现保存时自动格式化,同时需要安装如下插件。

为了让格式化不会影响到编辑里所有的项目,可以针对当前项目添加一个专门的格式化配置。

在项目的根目录下添加一个叫.vscode的文件夹,文件夹里新建一个叫setting.json的文件,添加代码如下:

以下是上图中的代码,便于大家复制粘贴。

{
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true,
    "editor.codeActionsOnSave": {
        "source.fixAll": true
    }
}

4. 语法校验配置

ESLint主要是为了解决代码质量问题,它能在我们编写代码时就检测出程序可能出现的隐性Bug。

首先执行安装命令:

yarn add eslint -D

 安装完成后,执行以下命令初始化:

yarn eslint --init

以下为初始化过程,相关选项可供参考。

执行完以上步骤以后,在根目录下会生成名为.eslintrc.cjs的文件,我们可以在里面加一些自定义的规则,其内容如下:

module.exports = {
    root: true,
    env: { browser: false, es2020: true },
    extends: [
        // ESLint推荐配置
        "eslint:recommended",
        // TS推荐的配置
        "plugin:@typescript-eslint/recommended",
        // React推荐的配置
        "plugin:react-hooks/recommended",
    ],

    ignorePatterns: ["dist", ".eslintrc.cjs"],
    parser: "@typescript-eslint/parser",
    plugins: ["react-refresh"],
    rules: {
        "react-refresh/only-export-components": [
            "warn",
            { allowConstantExport: true },
        ],

        // * "off" 或 0    ==>  关闭规则
        // * "warn" 或 1   ==>  打开的规则作为警告,不影响代码执行
        // * "error" 或 2  ==>  规则作为一个错误,代码不能执行,界面报错

        // 以下为自定义规则
        'react/react-in-jsx-scope': 'off',  // 关闭JSX必须声明React
        'no-console': 'error',              // 禁止控制台输出
        'no-unused-vars': 'error',          // 禁止定义未使用变量
        'no-debugger': 'error',             // 禁止控制台调试
        'no-var': 'error',                  // 禁止声明全局变量
    },
};

记得将以上第3行代码中的默认为浏览器环境改为false,否则有些文件里的node语法会报错。

5. 脚手架Vite配置 

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import path from 'path'

export default defineConfig({
    // 配置服务代理
    server: {
        host: 'localhost',
        port: 8080,
        proxy: {
            '/api': 'http://api-driver.marsview.cc'
        }
    },
    resolve: {
        // 添加路径别名
        alias: {
            '@': path.resolve(__dirname, './src')
        }
    },
    plugins: [react()]
})

以上代码中只添加了两个常用的配置 ,更多的配置可以查看Vite官网。

Vite官网:https://vitejs.dev/config/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1952650.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux nginx 命令记录,和转发

nginx: 查看配置文件:sudo find / -name nginx.conf 配置文件:/etc/nginx/nginx.conf 检查nginx.conf文件正确性 nginx -t -c /path/to/nginx.conf 或者 有nginx命令执行 nginx -t 查找nginx 可执行文件:which nginx /usr/sbin/nginx 安装Ng…

比 Xshell 还好用的 SSH 客户端,MobaXterm 太酷了!

由于需要连接远程 Linux 服务器,早期使用过 Putty,SecureCRT,后面主要使用 Xshell。 自从接触了 MobaXterm之后,个人感觉比 Xshell 更好用,堪称SSH客户端的神器啊! MobaXterm 和 Xshell 的关系&#xff0…

几个小创新模型,Transformer与SVM、LSTM、BiLSTM、Adaboost的结合,MATLAB分类全家桶再更新!...

截止到本期MATLAB机器学习分类全家桶,一共发了5篇,参考文章如下: 1.机器学习分类全家桶,模式识别,故障诊断的看这一篇绝对够了!MATLAB代码 2. 再更新,机器学习分类全家桶,模式识别&a…

AI绘画:艺术与科技融合的新篇章

随着人工智能(AI)技术的飞速发展,AI绘画作为一种新兴的艺术形式,正逐步改变着传统艺术创作的格局。从早期的简单模仿到如今的个性化创作,AI绘画不仅提升了艺术创作的效率和质量,还开辟了全新的应用场景和商…

Temu卖家必读:测评补单策略,提升销量与转化率!

拼多多旗下的跨境电商平台Temu,凭借其独特的广告和低价策略,迅速在美国市场站稳脚跟,并在欧美市场取得初步成功后,马不停蹄地迈向了更广阔的海外市场。去年七月,Temu正式进军亚洲市场,日本与韩国成为其首批…

免费SSL证书的安全性与获取指南

SSL证书是一种数字凭证,用于加密用户与网站之间的信息交换,以确保传输的数据不被第三方窃取。它像是一个数字版的密封印章,为数据的传输过程提供了一层保护膜。 免费的SSL证书通常由CA机构提供,它们同样可以提供基础数据的加密服…

MATLAB基础:图像绘制

今天我们继续学习MATLAB中图像的绘制。 平面图形 plot(x,y): x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。 plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n): 多组折线,可选择表示折线的属性,如颜色、线型…

Excel的“只读方式”有什么方法可以变为可直接编辑吗?

在日常工作中,我们经常遇到Excel文件被设置为“只读方式”的情况,这可能是由于文件权限设置、文件共享需要或文件被下载时自动设置为只读等多种原因造成的。然而,当需要修改或编辑这些文件时,我们就需要将其从“只读方式”转换为可…

LlamaIndex:向 LLM 添加个人数据

LlamaIndex 是您构建基于 LLM 的应用程序的友好数据助手。您可以使用自然语言轻松地获取、管理和检索私有数据和特定领域的数据。 LlamaIndex 是一个针对大型语言模型 (LLM) 应用程序的数据框架。GPT-4 等 LLM 在海量的公共数据集上进行预训练,开箱即用即可实现令人…

微凌客旅游管理系统uniapp源码搭建教程

一.搭建教程环境 系统环境:CentOS、 运行环境:宝塔 Linux 网站环境:Nginx 1.15.10 MySQL 5.6.46 PHP-7.1-7.3 常见插件:fileinfo ; redis 三.系统搭建图片

优化算法|自适应大邻域搜索算法及MATLAB代码实现

回来填坑了,本篇推文将详细讲解ALNS算法求解VRP问题及MATLAB代码实现。 算法介绍 节约算法构造初始解 function routessaving_init(DistMatrix, Demand, Cap) C_EPS1e-1;Nsize(DistMatrix,1); routescell(numel(2:N),1); for i1:numel(routes) % 每个节点单独一条…

c生万物系列(继承)

上一节笔者用宏和文件模拟了封装,这一节笔者继续使用c语言模拟继承。 简单介绍就是:在结构体里面重新定义需要继承的结构体。 调用时,使用&obvir,可以想象我们定义数组*p,p表示该数组第一个成员,这是因为结构体声…

【教程】vscode添加powershell7终端

win10自带的 powershell 是1.0版本的,太老了,更换为powershell7后,在 vscode 的集成终端中没有显示本篇教程记录在vscode添加powershell7终端的过程 打开vscode终端配置 然后来到这个页面进行设置 查看 powershell7 的安装位置&#xff…

【计算机毕业设计】869渔具在线销售网站

🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…

【调色板软件】免费、开源的调色板软件,焰火十二卷,提供了多种功能来生成一组调和色彩NO.108

本文一共:316 个字,需要阅读:1 分钟,更新时间:2024年7 月27日,部分内容具有时效性,如有失效请留言,阅读量:0 使用平台: Windows/macOS/CentOS/Ubuntu 由于我不是很懂,有需要的人自己摸索吧 资源来源于网络,免费分享仅供学习和测试使用&…

秒懂C++之string类(下)

目录 一.接口说明 1.1 erase 1.2 replace(最好别用) 1.3 find 1.4 substr 1.5 rfind 1.6 find_first_of 1.7 find_last_of 二.string类的模拟实现 2.1 构造 2.2 无参构造 2.3 析构 2.4.【】运算符 2.5 迭代器 2.6 打印 2.7 reserve扩容 …

Linux嵌入式学习——数据结构——概念和Seqlist

数据结构 相互之间存在一种或多种特定关系的数据元素的集合。 逻辑结构 集合,所有数据在同一个集合中,关系平等。 线性,数据和数据之间是一对一的关系。数组就是线性表的一种。 树, 一对多 图,多对多 …

金螳螂家整装新品GH7隆重发布:引领家居美学新风尚,重塑性价比标杆

近日,家装行业知名品牌金螳螂家隆重发布高端性价比数智整装新品——GH7,一款集设计美学、极致性价比与高度确定性于一身的产品,旨在为中国有改善型需求的家庭带来前所未有的家居生活体验。 以用户需求为核心,重塑家装设计新高度 …

Harmony学习(三)

1.模版字符串 let name:string 模版字符串 let age:number 18 console.log(字符串:,${name}和${age})2.字符串和数字互相转换 //字符串转数字 let str1:string 1.1 console.log(转换,Number(str1)) //output: 1.1 console.log(转换,parseInt(str1)) //output: 1 conso…

线上环境服务器CPU飙升排查

前因 收到线上服务器CPU使用率100%的告警信息。 环境 jdk1.8CentOS Linux ;CentOS Linux 排查 查看服务器CPU使用率 果然cpu已经达到了100%了 命令 top 使用arthas工具 使用方式 arthas 执行命令java -jar arthas-boot.jar 然后执行命令 thread 看到有两个…