| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- module.exports = {
- extends: [
- 'eslint:recommended',
- 'plugin:vue/recommended'
- ],
- plugins: [
- 'vue'
- ],
- rules: {
- // Règles générales
- 'no-console': 'off', // Autoriser l'utilisation de console.log() (peut être personnalisé selon vos besoins)
- 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', // Interdire l'utilisation de debugger dans les environnements de production
- 'no-unused-vars': 'warn', // Avertir en cas de variables non utilisées
- // Règles spécifiques à Vue.js
- 'vue/attribute-hyphenation': 'error', // Utiliser la notation kebab-case pour les attributs dans les templates
- 'vue/component-definition-name-casing': ['error', 'PascalCase'], // Utiliser PascalCase pour les noms de composants Vue
- 'vue/html-closing-bracket-newline': ['error', {
- 'singleline': 'never', // Pas de nouvelle ligne après une balise de fermeture en ligne
- 'multiline': 'always' // Nouvelle ligne après une balise de fermeture multiligne
- }],
- 'vue/html-closing-bracket-spacing': ['error', {
- 'startTag': 'never', // Pas d'espace avant la balise de fermeture
- 'endTag': 'never', // Pas d'espace avant la balise de fermeture
- 'selfClosingTag': 'always' // Espace avant la balise de fermeture des balises auto-fermantes
- }],
- 'vue/html-indent': ['error', 2, {
- 'attribute': 1, // Indentation des attributs
- 'baseIndent': 1, // Indentation de base du contenu
- 'closeBracket': 0, // Pas d'indentation pour les balises de fermeture
- 'alignAttributesVertically': true // Aligner les attributs verticalement
- }],
- 'vue/max-attributes-per-line': ['error', {
- 'singleline': 3, // Maximum de 3 attributs par ligne en ligne unique
- 'multiline': {
- 'max': 1, // Maximum de 1 attribut par ligne en mode multiligne
- 'allowFirstLine': false // Interdire les attributs sur la première ligne en mode multiligne
- }
- }],
- 'vue/no-v-html': 'off', // Autoriser l'utilisation de v-html
- 'vue/require-default-prop': 'off', // Ne pas exiger de valeur par défaut pour les props
- 'vue/singleline-html-element-content-newline': 'off', // Autoriser le contenu en ligne dans les éléments HTML
- }
- };
|