.eslintrc.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. module.exports = {
  2. // 默认情况下,ESLint 会在所有父级目录里寻找配置文件,一直到根目录。ESLint 一旦发现配置文件中有 "root": true,它就会停止在父级目录中寻找。
  3. root: true,
  4. env: {
  5. node: true,
  6. browser: true
  7. },
  8. globals: {
  9. uni: true,
  10. wx: true,
  11. App: true,
  12. getApp: true,
  13. Page: true,
  14. getCurrentPages: true,
  15. Component: true,
  16. Behavior: true
  17. },
  18. extends: [
  19. 'plugin:vue/essential',
  20. '@vue/standard',
  21. '@vue/typescript',
  22. '@vue/prettier/@typescript-eslint'
  23. ],
  24. plugins: ['@typescript-eslint'], // 定义了该eslint文件所依赖的插件
  25. parserOptions: {
  26. // 解析器选项
  27. // 指定ESLint可以解析JSX语法
  28. ecmaVersion: 2020,
  29. sourceType: 'module',
  30. ecmaFeatures: {
  31. jsx: true
  32. },
  33. parser: '@typescript-eslint/parser' // 定义ESLint的解析器,才能正确的检测和规范TS代码
  34. },
  35. rules: {
  36. 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  37. 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
  38. 'no-unused-vars': [
  39. 1,
  40. {
  41. vars: 'all',
  42. args: 'none'
  43. }
  44. ],
  45. 'no-tabs': 0,
  46. 'no-mixed-spaces-and-tabs': 0,
  47. indent: [2, 2, { SwitchCase: 1 }],
  48. 'space-before-function-paren': [0, 'never']
  49. }
  50. }