.eslintrc.cjs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. module.exports = {
  2. "env": {
  3. "browser": true,
  4. "es2021": true
  5. },
  6. "extends": [
  7. "eslint:recommended",
  8. "plugin:@typescript-eslint/recommended",
  9. "plugin:vue/vue3-essential",
  10. 'vue-global-api',
  11. "@vue/eslint-config-typescript"
  12. ],
  13. "overrides": [
  14. {
  15. "env": {
  16. "node": true
  17. },
  18. "files": [
  19. ".eslintrc.{js,cjs}"
  20. ],
  21. "parserOptions": {
  22. "sourceType": "script"
  23. }
  24. }
  25. ],
  26. "root": true,
  27. "parserOptions": {
  28. "ecmaVersion": "latest",
  29. "parser": "@typescript-eslint/parser",
  30. "sourceType": "module"
  31. },
  32. "plugins": [
  33. "@typescript-eslint",
  34. "vue"
  35. ],
  36. "rules": {
  37. "vue/multi-word-component-names": 'off',
  38. // 使用索引签名定义任意对象键,只允许使用Record类型,type Foo = Record<string, unknown>;
  39. "@typescript-eslint/consistent-indexed-object-style": "error",
  40. // 禁止重复导入。
  41. "no-duplicate-imports": "error",
  42. // 句尾禁止分号
  43. "semi": ["error", "never"],
  44. // 强制使用单引号
  45. // 统一使用单引号
  46. "quotes": 'off',
  47. "@typescript-eslint/quotes": ["error", "single"],
  48. }
  49. }