Configuração de ESLint e Prettier para Projetos Vue.js 3 com TypeScript

O ESLint e o Prettier são ferramentas essenciais para manter a consistência do código em equipes de desenvolvimento. Ao padronizar estilos de escrita, elas reduzem a complexidade na leitura e manutenção de projetos, especialmente em ambientes colaborativos.

Configurando o ESLint

Para iniciar, adicione o pacote necessário ao seu projeto. Execute o comando abaixo:

npm install -D @eslint/create-config eslint

Em seguida, inicialize a configuração do ESLint respondendo às perguntas interativas:

npx eslint --init

Isso gerará um arquivo de configuração. Modifique o arquivo .eslintrc.cjs conforme as necessidades do seu projeto Vue.js 3 com TypeScript. Um exemplo de configruação personalizada:

module.exports = {
    root: true,
    env: {
        browser: true,
        es2022: true,
        node: true
    },
    extends: [
        'eslint:recommended',
        'plugin:vue/vue3-recommended',
        'plugin:@typescript-eslint/recommended',
        'plugin:prettier/recommended'
    ],
    parser: 'vue-eslint-parser',
    parserOptions: {
        ecmaVersion: 'latest',
        parser: '@typescript-eslint/parser',
        sourceType: 'module'
    },
    plugins: ['vue', '@typescript-eslint'],
    rules: {
        '@typescript-eslint/no-unused-vars': 'warn',
        indent: ['error', 2],
        'vue/multi-word-component-names': 'off',
        semi: ['error', 'always']
    }
};

Crie um arquivo .eslintignore na raiz do projeto para excluir diretórios e arquivos da verificação:

node_modules/
dist/
public/
*.config.js

Adicione um script ao package.json para automatizar a correção de problemas:

{
  "scripts": {
    "lint": "eslint --fix ."
  }
}

Configurando o Prettier

Instale as dependências do Prettier e os plugins de integração com o ESLint:

npm install -D prettier eslint-config-prettier eslint-plugin-prettier

Crie um arquivo de configuração .prettierrc.json com as preferências de formatação:

{
  "singleQuote": true,
  "semi": true,
  "trailingComma": "none",
  "printWidth": 80,
  "tabWidth": 2,
  "useTabs": false
}

Defina um arquivo .prettierignore para evitar a formatação de arquivos específicos:

dist/
node_modules/
public/
*.min.js

Inclua um script no package.json para aplicar a formatação em todo o projeto:

{
  "scripts": {
    "format": "prettier --write \"**/*.{js,ts,vue,json}\""
  }
}

Execute os comanods npm run lint e npm run format conforme necessário para manter o código limpo e consistente.

Tags: Vue.js TypeScript eslint Prettier Code Linting

Publicado em 6-27 22:09