「Vue3」手把手教你使用 Vite 快速搭建项目

本文介绍了如何使用Vite初始化Vue3项目,详细讲解了配置vite.config.ts、tsconfig.json、git提交检查、eslint、prettier以及style规则的过程,旨在帮助开发者快速上手Vue3项目开发,并设置了CICD流程。

本项目选型默认使用vue3 + typescript + vite

1. 使用vite初始化项目

vite创建地址,创建完成后有一个基本的项目结构了,如下图
在这里插入图片描述

2. 配置vite.config.ts,配置详解

import { defineConfig } from 'vite'

import path from 'path';

import vue from '@vitejs/plugin-vue'

import vueJsx from '@vitejs/plugin-vue-jsx'



// https://vitejs.dev/config/

export default defineConfig({

  plugins: [vue(), vueJsx()],

  resolve: {

  //设置文件路径解析,需要配合tsconfig.json的paths结合解析

    alias: {

      '@': path.resolve(__dirname, 'src'),

      components: path.resolve(__dirname, 'src/components'),

    }

  },

  //相关打包配置

  build: {

    sourcemap: true,

    // Turning off gzip-compressed size display can slightly reduce packaging time

    reportCompressedSize: false,

    chunkSizeWarningLimit: 2000,

  },

  //服务器相关配置,vite3默认端口5173

  server: {

    host: true,

  }

})

发现报错了 Cannot find module path or its corresponding type declarations

那么需要安装@types/node并且在tsconfig.json中的types中添加’node’,如下配置

3. 配置tsconfig.json

{

  "compilerOptions": {

    "rootDir": ".", // 根目录地址

    "target": "ESNext", // 指定 ECMAScript 目标版本

    "useDefineForClassFields": true, // 对类字段使用定义

    "noImplicitAny": false, // 在表达式和声明上有隐含的 any类型时不报错

    "module": "ESNext", // 指定使用模块

    "moduleResolution": "Node", // 选择模块解析策略: 'node' (Node.js)

    "strict": true, // 启用所有严格类型检查选项

    "jsx": "preserve", // 指定 jsx 代码的生成

    "sourceMap": true, // 生成相应的 '.map' 文件

    "resolveJsonModule": true, // 解析 JSON 模块

    "isolatedModules": true, // 将每个文件作为单独的模块

    "esModuleInterop": true, // ES 模块互操作

    "lib": ["ESNext", "DOM"], // 指定要包含在编译中的库文件

    "skipLibCheck": true, // 过默认库检查

    "types": ["node", "naive-ui/volar"], // 需要包含的类型声明文件名列表

    "baseUrl": ".", // 用于解析非相对模块名称的基目录

    "importHelpers": true, // 导入帮助

    "strictNullChecks": true, // 启用严格的 null 检查

    "allowSyntheticDefaultImports": true, // 允许合成默认导入

    "allowJs": false, //允许js文件

    "noEmit": true, // 不要发出编译器输出文件

    "paths": { //路径映射

      "@/*": ["src/*"],

      "components/*": ["src/components/*"]

    }

  },

  //指定需要包含的文件

  "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],

  "references": [{ "path": "./tsconfig.node.json" }] // 引用其他tsconfig配置,参考

}

4. 配置git提交检查

前端一般使用yorkiehusky来对git提交进行lint检查,差异可看yorkie的文档介绍

npm install yorkie lint-staged --save-dev

//在package.json中配置

"gitHooks": {

    "pre-commit": "lint-staged",

    "commit-msg": "node scripts/verifyCommit.js"

  },

 "lint-staged": {

    "*.{js,jsx,ts,tsx}": [

      "eslint --fix",

      "prettier --write"

    ],

    "package.json": [

      "prettier --write"

    ],

    "*.vue": [

      "eslint --fix",

      "prettier --write",

      "stylelint --fix"

    ],

    "*.{scss,less,styl,html}": [

      "stylelint --fix",

      "prettier --write"

    ],

    "*.md": [

      "prettier --write"

    ]

  }

scripts里面的erifyCommit.js和.github/commit-convention.md文件参考vue3

5. 配置eslint进行代码规范化

pnpm add -D eslint @antfu/eslint-config eslint-plugin-prettier eslint-config-prettier //直接安装使用即可

module.exports = {

  "extends": [

      "@antfu",

      "prettier" //eslint走prettier,关闭所有不必要或可能与Prettier冲突的规则,eslint-config-prettier

      "plugin:prettier/recommended" // 其实是一些已经配置好的规则插件等,使用recommended配置

  ]

}

6. 配置prettier进行代码格式化

prettier可配置

### 创建和配置基于Vue 3Vite的新项目 为了创建并配置一个新的基于Vue 3Vite项目,以下是详细的指南: #### 安装Node.js和npm 确保计算机上已安装新版本的Node.js以及附带的npm工具。这可以通过访问官方网站下载安装包来完成。 #### 初始化新项目 通过命令行工具执行以下操作以初始化新的项目文件夹,并设置必要的依赖项: ```bash npm init vite@latest my-vue-app --template vue cd my-vue-app ``` 上述命令会利用`vite`模板快速搭建起一个基础框架[^1]。 #### 安装依赖库 进入刚刚创建好的项目目录之后,运行如下指令来安装所需的开发环境及相关依赖: ```bash npm install ``` 此过程将会读取`package.json`中的定义自动拉取所有必需的软件包。 #### 启动本地服务器 一切准备就绪后,可以启动内置的发展模式下的HTTP服务来进行初步测试: ```bash npm run dev ``` 此时应该能够在浏览器中看到默认页面加载成功的信息提示。 #### 配置构建脚本 对于生产环境下部署应用而言,则需调整打包参数以便优化性能表现。编辑根路径下名为`vite.config.ts`(如果是TypeScript工程)或`.js`扩展名对应的JavaScript版配置文档,在其中指定输出目标以及其他选项。 #### 添加额外功能模块 随着应用程序复杂度增加可能还会涉及到引入第三方组件库或者其他辅助类目;比如Element Plus就是一个非常流行的UI解决方案之一,可通过下面的方式加入到现有体系当中去: ```bash npm add element-plus ``` 随后按照官方说明文档指引完成样式表注入等工作即可正常使用所提供的控件集。 #### 构建终产物 当确认无误准备好上线发布时,记得先清理旧有的编译残留再正式产出压缩后的静态资源集合体: ```bash npm run build ``` 该动作结束后会在dist子目录内形成一套完整的Web站点素材供后续分发传播所用。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值