vscode下vue3+vite+ts+eslint项目配置
一、 创建项目
pnpm create vue@latest
注意:是否引入 ESLint 用于代码质量检测?选择否
二、安装依赖
pnpm i -D eslint @antfu/eslint-config
三、在项目根目录创建文件: eslint.config.js
// eslint.config.js import antfu from '@antfu/eslint-config' export default antfu({ rules: { #以下两行针对的配置都是尾随逗号,如果删除第一行则没有逗号时,style和eslint会冲突 'style/comma-dangle': 'off',//禁用style 'comma-dangle': ['error', 'never']//eslint的配置 } })
三、配置vscode
{ "prettier.enable": false, "editor.formatOnSave": false, "editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit", "source.organizeImports": "never" }, "eslint.rules.customizations": [ { "rule": "style/*", "severity": "off", "fixable": true }, { "rule": "format/*", "severity": "off", "fixable": true }, { "rule": "*-indent", "severity": "off", "fixable": true }, { "rule": "*-spacing", "severity": "off", "fixable": true }, { "rule": "*-spaces", "severity": "off", "fixable": true }, { "rule": "*-order", "severity": "off", "fixable": true }, { "rule": "*-dangle", "severity": "off", "fixable": true }, { "rule": "*-newline", "severity": "off", "fixable": true }, { "rule": "*quotes", "severity": "off", "fixable": true }, { "rule": "*semi", "severity": "off", "fixable": true } ], "eslint.validate": [ "javascript", "javascriptreact", "typescript", "typescriptreact", "vue", "html", "markdown", "json", "jsonc", "yaml", "toml", "xml", "gql", "graphql", "astro", "svelte", "css", "less", "scss", "pcss", "postcss" ] }
四、使用
ctrl+s保存时自动格式化
五、相关地址
不依赖第三方的方法
安装依赖
安装地址https://eslint.org/docs/latest/use/getting-started
pnpm create @eslint/config@latest
安装vue相关配置
pnpm add -D eslint-plugin-vue @vue/eslint-config-prettier
依赖列表
devDependencies: @eslint/js 9.21.0 @vitejs/plugin-vue 5.2.1 @vue/eslint-config-prettier 10.2.0 eslint 9.21.0 eslint-config-standard 17.1.0 eslint-plugin-vue 9.32.0 globals 16.0.0 typescript-eslint 8.24.1 vite 6.1.1 vite-plugin-vue-devtools 7.7.2
更改eslint.config.js
import path from 'node:path' import url from 'node:url' import { FlatCompat } from '@eslint/eslintrc' export default [ ...(new FlatCompat({ baseDirectory: path.dirname(url.fileURLToPath(import.meta.url)) }).config({ plugins: [ 'vue' ], extends: [ 'eslint-config-standard', 'plugin:vue/vue3-recommended' ], rules: { 'vue/singleline-html-element-content-newline': 'off', 'no-unused-vars': 'warn' } })) // ... ]
本文来自博客园,作者:小枫同学,除网络转载的部分,其他版权属于作者和博客园所有,未经作者或博客园许可,禁止转载、复制、重新发布完整或者部分文字、代码、图片等信息,否则将保留追究法律责任的权利(如博客侵权了您的作品,本人再次表示抱歉,请将原创地址发送至下文邮箱,核实后立刻删除。)。查阅文章的同学,由于网络爬虫严重,有些代码并不会完整贴出来或者存在bug,不过你可以发送邮件到xfstune@126.com获取新代码,记得附上文章链接
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人