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

1. 创建Vite项目

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

bash 复制代码
yarn create vite

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

注意事项:

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

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

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

bash 复制代码
yanr install --save

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

bash 复制代码
yarn dev

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

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

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

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

javascript 复制代码
registry "https://registry.npm.taobao.org"

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

2. 编辑器配置

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

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

javascript 复制代码
# 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. 格式化配置

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

bash 复制代码
yarn add prettier -D

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

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

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

}

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

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

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

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

javascript 复制代码
{
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true,
    "editor.codeActionsOnSave": {
        "source.fixAll": true
    }
}

4. 语法校验配置

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

首先执行安装命令:

javascript 复制代码
yarn add eslint -D

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

javascript 复制代码
yarn eslint --init

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

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

javascript 复制代码
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配置

javascript 复制代码
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/

相关推荐
并不会6 天前
常见 CSS 选择器用法
前端·css·学习·html·前端开发·css选择器
川石教育9 天前
Vue前端开发:元素动画效果之过渡动画
前端·vue.js·前端框架·前端开发·vue前端
放逐者-保持本心,方可放逐15 天前
react 框架应用+总结+参考
前端·前端框架·react
白泽来了15 天前
我开源了一个短视频应用(Go+React)|DouTok2.0 项目介绍
微服务·开源·go·react
星辰大海141217 天前
react 基础学习笔记
前端·javascript·笔记·学习·react·1024程序员节
canonical-entropy17 天前
从React Hooks看React的本质
前端·前端框架·react·hooks·1024程序员节
不知名靓仔18 天前
React常用前端框架合集
前端框架·react
廖秋林18 天前
Vite React 项目绝对路径配置
javascript·typescript·react
长河20 天前
React18-useEffect函数
前端·react·1024程序员节
华为云开发者联盟24 天前
几行代码带你用TinyEngine低代码引擎开发侧边栏插件
低代码·开源·前端开发·tinyengine