# vscode-eslint-prettier-helper **Repository Path**: japlus/vscode-eslint-prettier-helper ## Basic Information - **Project Name**: vscode-eslint-prettier-helper - **Description**: 自动配置vscode eslint prettier - **Primary Language**: NodeJS - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-03-07 - **Last Updated**: 2024-09-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: Nodejs, VSCode, Eslint, Prettier, Visual-studio-code ## README # vscode-eslint-prettier-helper Automatically configure `Visual Studio Code` eslint + prettier code formatter | 自动配置vscode eslint prettier 环境 ## Usage | 使用方式 > npx vscode-eslint-prettier-helper
> **or install first**
> npm i vscode-eslint-prettier-helper
> npx veph
## Support | 支持环境 * js * ts * vue2 * vue3 * vue2 + ts * vue3 + ts * react(Beta) * react + ts(Beta) * svelte3 * svelte3-ts ## What will it do? | 它会做什么?
Install vscode extensions | 安装vscode扩展 * dbaeumer.vscode-eslint (offline,version:2.2.3) * ~~octref.vetur (online) [`vue2`]~~ * Vue.volar (online) [`vue2`,`vue3`] * svelte.svelte-vscode (online) [`svelte`]
Add config files | 添加配置文件 * .eslintrc.cjs * .eslintignore * .prettier.cjs * .prettierignore * jsconfig.json [`vue2`, `vue3`] // This file make vscode recognize '@' alias
Npm install eslint prettier packages | 安装eslint prettier npm依赖 ```js eslint: { eslint: '8.37.0', }, html: { 'eslint-plugin-html': '7.1.0', }, prettier: { prettier: '2.8.7', 'eslint-config-prettier': '8.8.0', 'eslint-plugin-prettier': '4.2.1', }, js: {}, tsBase: { typescript: 'latest', }, ts: { '@typescript-eslint/eslint-plugin': '5.57.1', '@typescript-eslint/parser': '5.57.1', }, vue2: { 'vue-eslint-parser': '9.1.0', 'eslint-plugin-vue': '9.8.0', }, vue3: { 'vue-eslint-parser': '9.1.0', 'eslint-plugin-vue': '9.8.0', }, 'vue2-ts': { 'vue-eslint-parser': '9.1.0', 'eslint-plugin-vue': '9.8.0', '@typescript-eslint/eslint-plugin': '5.57.1', '@typescript-eslint/parser': '5.57.1', }, 'vue3-ts': { 'vue-eslint-parser': '9.1.0', 'eslint-plugin-vue': '9.8.0', '@typescript-eslint/eslint-plugin': '5.57.1', '@typescript-eslint/parser': '5.57.1', }, react: { 'eslint-plugin-react': '7.31.10', }, 'react-ts': { '@typescript-eslint/eslint-plugin': '5.57.1', '@typescript-eslint/parser': '5.57.1', }, svelte3: { 'eslint-plugin-svelte': '2.25.0', 'prettier-plugin-svelte': '2.10.0', }, 'svelte3-ts': { 'eslint-plugin-svelte': '2.25.0', 'prettier-plugin-svelte': '2.10.0', '@typescript-eslint/parser': '5.57.1', 'svelte-eslint-parser': '0.24.2', }, ```
Auto format the code when save it(press ctrl + s) | 保存代码时,自动格式化代码 * Windows: ${userHomeDir}/AppData/Roaming/Code/User/settings.json * Linux: ${userHomeDir}/.config/Code/User/settings.json Update vscode settings.json | 更新vscode setting.json配置 ```json "editor.codeActionsOnSave": { "source.fixAll.eslint": true } ``` when select `vue2-ts`,`vue3-ts` ```json "eslint.validate": ["typescriptreact"], // support tsx ``` when select `svelte3`,`svelte3-ts` ```json "eslint.validate": [ "svelte" ], ```
## The VScode version and the node version are as new as possible. | VScode 版本和node版本尽量新 ## ps * You **don't need** to install the `prettier extension` of vscode. | **不需要**安装vscode的prettier扩展 * After modify the prettierrc.js, we need restart eslint | 修改prettierrc.js配置后,请重启eslint 插件使其生效 (Press F1, and select `ESLint: Restart ESLint Server`) * vscode eslint plugin < 2.2.0 not support eslint@8 | vscode eslint插件版本< 2.2.0 则不支持eslint@8 * If it not work in vue-cli@4, Try `npm remove @vue/cli-plugin-eslint babel-eslint`, and remove eslint config in `package.json` if exist. | 如果在vue-cli中不生效,则尝试移除`@vue/cli-plugin-eslint babel-eslint`。package.json中,如有eslint配置,请删除。