vite+vue3+ts+eslint+prettier+husky+lint-stated 项目搭建

这篇具有很好参考价值的文章主要介绍了vite+vue3+ts+eslint+prettier+husky+lint-stated 项目搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目搭建

创建初始项目

Node.js 版本 14.18+,16+

npm create vite@latest my-vue-app --template vue-ts

添加eslint

  1. eslint 初始化
    npm init @eslint/config

    eslint初始化脚本,按自己的要求选择相应的eslint 配置,以下是我选择的配置项

    ✔ How would you like to use ESLint? · style
    ✔ What type of modules does your project use? · esm
    ✔ Which framework does your project use? · vue
    ✔ Does your project use TypeScript? · No / Yes
    ✔ Where does your code run? · browser
    ✔ How would you like to define a style for your project? · guide
    ✔ Which style guide do you want to follow? · standard-with-typescript
    ✔ What format do you want your config file to be in? · JavaScript

    经过检查本地的依赖然后列出配置项所需的依赖:

    会提示我们是否立即下载依赖,下载完成后会在根目录下自动生成eslint配置文件, 以下是我生成的配置文件.eslintrc.cjs,生成配置文件后,我们可以通过overrides指定eslint校验的范围,也可以自定义校验规则。

    此时我们的项目里可能会报错, 我们需要改一下tsconfig的配置,(项目搭建问题记录Q3)。

    module.exports = {
      env: {
        browser: true,
        es2021: true,
      },
      extends: ["plugin:vue/vue3-essential", "standard-with-typescript"],
      overrides: [
        {
          files: "src/*.{js,ts,vue}", // 指定检查的目标文件,不需要额外添加.eslintignore
        },
      ],
      parserOptions: {
        ecmaVersion: "latest",
        sourceType: "module",
        project: "tsconfig.json",
      },
      plugins: ["vue"],
      rules: {
        "@typescript-eslint/triple-slash-reference": "off", // 允许三斜杠引用其他模块的类型
      },
    };
    
  2. 在package.json 配置eslint修复脚本

    "scripts": {
        "dev": "vite",
        "build": "vue-tsc && vite build",
        "preview": "vite preview",
        "eslint": "eslint --ext src/*.{js,ts,vue} --fix",
      },
    

添加prettier

  1. 下载依赖

    npm install prettier eslint-config-prettier --save-dev

    eslint-config-prettier: 防止eslint 规则和prettier 格式化规则冲突,冲突的规则将使用prettier的规则

  2. 在根目录下创建配置文件.prettierrc.json和格式化忽略文件.prettierignore

    	 {
    	  "printWidth": 120,
    	  "tabWidth": 2,
    	  "semi": true,
    	  "trailingComma": "none",
    	  "arrowParens": "avoid",
    	  "endOfLine": "auto"
    	}
    
  3. 在package.json 配置格式化脚本 format

    "scripts": {
        "dev": "vite",
        "build": "vue-tsc && vite build",
        "preview": "vite preview",
        "eslint": "eslint --ext src/*.{js,ts,vue} --fix",
        "format": "prettier --write ."
      },
    

添加husky && lint-staged

  1. 下载依赖

    npm install --save-dev husky lint-staged
    npx husky install
    npm pkg set scripts.prepare="husky install"
    npx husky add .husky/pre-commit "npx lint-staged"
    
  2. 在package.json 添加配置

    "lint-staged": {
        "*.{js,ts,vue}": [
          "npm run eslint",
          "npm run format"
        ]
      }
    

项目搭建问题记录

  1. Module ‘“xx.vue“‘ has no default export.Vetur(1192)

    A: Vue2 使用Vetur用于 Vue 语法的支持的高亮,Vue3 官方推荐使用Volar拓展,我们将Vetur拓展卸载就可以了。

  2. eslint 报错 Error while loading rule '@typescript-eslint/dot-notation': You have used a rule which requires parserServices to be generated. You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser.

    A: eslintrc.cjs 配置 parserOptions.project

     parserOptions: {
         ecmaVersion: "latest",
         sourceType: "module",
         project: "tsconfig.json", // 添加解析配置
    }
    
  3. tsconfig.jsonmoduleResolution: "bundler"会提示波浪线,报错提示在没有 "node" 模块解析策略的情况下,无法指定选项 "-resolveJsonModule"。ts
    A: 将moduleResolution: “node”, 并移除allowImportingTsExtensions: true文章来源地址https://www.toymoban.com/news/detail-480002.html

到了这里,关于vite+vue3+ts+eslint+prettier+husky+lint-stated 项目搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp+vite+vue3+ts配置eslint代码检查及prettier规范检查

    首先要知道eslint与prettier的区别,ESLint 是一个用于检测 JavaScript 代码中的错误和潜在问题的工具。它只关注你写的代码是否正确,不会管你代码的格式;Prettier 则是一个代码格式化工具,它旨在确保代码在缩进、空格、换行、引号和分号等格式化方面遵循一致的规则,在

    2024年03月16日
    浏览(62)
  • Vue3+Vite+TS项目集成ESlint +Prettier实现代码规范检查和代码格式化

    我在这里直接是通过vite提供的默认模板来创建一个vue3 + ts的项目。这里可以cmd,然后npm -v来查看版本。 这样一个vue3 + ts的项目就创建好了,使用vscode打开该项目,然后执行 yarn 安装依赖 依赖安装完成后,执行   yarn dev  启动项目就可以在浏览器中正常访问了。   初始化

    2024年01月24日
    浏览(82)
  • 超级详细 最新 vite4+vue3+ts+element-plus+eslint-prettier 项目搭建流程

    系列文章目录 【element-plus】 table表格每行圆角解决方案 element也通用 【Vue3+Vite+Ts+element-plus】使用tsx实现左侧栏菜单无限层级封装 超级详细GitBook和GitLab集成步骤【linux环境】 1.1、项目创建 执行以下代码将vite将会自动生成初始的 vite4+vue3+ts的项目模板,pnpm、npm、yarn 选择一种执

    2024年02月04日
    浏览(70)
  • 代码规范 & 详细解释 husky、prettier、eslint、lint-staged 的作用和使用

    使用 vscode 新建一个项目(比如叫 my-project) 初始化 git 仓库( git init ) 初始化 package.json ( npm init -y ) 新建 src/main.js 项目结构如图 .git 目录没有出现在 vscode 编辑器中是正常的。 在介绍 husky 之前,首先要理解什么是 hook(钩子),在前端 Vue 框架中提供了 beforCreated、created、

    2024年02月03日
    浏览(47)
  • 代码约束(ESlint\prettier\husky\lint-staged\commitlint)

    JavaScript 是一个动态的弱类型语言,在开发中比较容易出错。因为没有编译程序,为了寻找 JavaScrip 代码错误通常需要在执行过程中不断调试。像 ESLint 可以让程序员在编码的过程中发现问题而不是在执行过程中,帮助我们提高开发效率。 提高代码整体的可读性、可维护性、可

    2024年04月08日
    浏览(71)
  • 【vue3+ts项目】配置eslint校验代码工具,eslint+prettier+stylelint

    package.json中 vite后面加上 --open 回答问题如下: 使用eslint仅检查语法,还是检查语法及错误,选第二个 使用的是什么模块,选第一个 项目使用的是什么框架,选vue 项目中使用TyoeScript ,选yes 项目运行在哪,选浏览器 创建的配置类型需要什么类型的,选Javascript 需要安装这些

    2024年02月09日
    浏览(78)
  • vite vue3配置eslint和prettier以及sass

    教程 官网 vue-eslint ts-eslint 生成配置文件 安装其他插件 修改.eslintrc.cjs 添加.eslintignore 测试 也可以执行查看结果 官网 添加.prettierrc.cjs 添加.prettierignore https://stylelint.io/ 配置.stylelintrc.cjs 配置忽略文件.stylelintignore package.json增加配置 执行 yarn format 会自动格式化ts、js、html、js

    2024年01月23日
    浏览(46)
  • vue3+ts项目02-安装eslint、prettier和sass

    项目创建 生成配置文件 安装其他插件 修改.eslintrc.cjs 添加.eslintignore https://prettier.io/ 添加.prettierrc.cjs 添加.prettierignore https://stylelint.io/ 配置.stylelintrc.cjs 配置忽略文件.stylelintignore package.json增加配置 执行 yarn format 会自动格式化css、js、html、json还有markdown代码

    2024年02月06日
    浏览(49)
  • 前端工程化 | vue3+ts+jsx+sass+eslint+prettier 配置化全流程

    前端开发是一个工程化的流程。 包括持续集成、持续部署。 我认为集成 的第一方面就是开发,在前端项目开发中,需要保证代码格式规范的统一、代码质量、提交的规划。而这些要求需要通过各种插件来保证规范化和流程化开发。 如何配置这些插件,这些插件各自的功能是

    2024年02月12日
    浏览(37)
  • vite 创建vue3项目,使用 Prettier 统一格式化代码,集成 ESLint、Stylelint 代码校验规范

    在团队开发中,保持代码风格的一致性和代码质量的高度,对于项目的可维护性和可读性非常重要。为了实现这一目标,我们可以使用工具来自动格式化代码并进行代码校验,在开发过程中捕获潜在的问题,并提供修复建议。 本示例中,我们将使用 Vite 来创建一个新的 Vue

    2024年04月28日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包