.eslintrc.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. // 配置前需做的事情
  2. // sudo npm install -g eslint
  3. module.exports = {
  4. "env": {
  5. "browser": true,
  6. "commonjs": true,
  7. "es6": true,
  8. "node": true
  9. },
  10. "extends": "eslint:recommended", // 集成eslint推荐规则 http://eslint.cn/docs/rules/
  11. "globals": {
  12. "cc": true,
  13. "CC_EDITOR": true,
  14. "Editor": true,
  15. "CC_JSB": true,
  16. "jsb": true,
  17. "G": true,
  18. "JMC": true,
  19. "XXTEA": true,
  20. "MD5": true,
  21. "wx": true,
  22. "qttGame": true,
  23. "MJ": true,
  24. "ZN": true
  25. },
  26. "parserOptions": {
  27. "ecmaVersion": 2018
  28. },
  29. "rules": { // "always": 0, "warning": 1, "error": 2
  30. "no-unused-vars": [2, { "args": "none" }], // 禁止未使用过的变量
  31. "array-bracket-spacing": [2, "never"], // 禁止或强制在括号内使用空格
  32. // "camelcase": [2, { "properties": "always" }], // 要求使用骆驼拼写法
  33. "comma-dangle": [2, "never"], // 要求或禁止使用拖尾逗号
  34. "comma-spacing": [2, { "before": false, "after": true }], // 强制在逗号周围使用空格
  35. "function-paren-newline": [2, "multiline"], // 强制在函数括号内使用一致的换行
  36. "indent": [2, 4, {"SwitchCase": 1}], // 强制使用一致的缩进
  37. "key-spacing": [2, { "afterColon": true }], // 强制在对象字面量的键和值之间使用一致的空格
  38. "keyword-spacing": [2, { "before": true, "after": true }], // 强制关键字周围空格的一致性
  39. "linebreak-style": [2, "unix"], // 强制使用一致的换行符风格
  40. "lines-between-class-members": [2, "always"], // 要求或禁止在类成员之间出现空行
  41. "no-tabs": 2, // 禁用 tab
  42. "no-trailing-spaces": [2, { "skipBlankLines": false, "ignoreComments": false }], // 禁用行尾空白
  43. "no-whitespace-before-property": 2, // 禁止属性前有空白
  44. "nonblock-statement-body-position": [2, "below"], // 强制单个语句的位置
  45. "object-curly-spacing": [2, "never", { "objectsInObjects": true }], // 强制在大括号中使用一致的空格
  46. "semi": [2, "always"], // 要求或禁止使用分号代替 ASI
  47. "semi-style": [2, "last"], // 强制分号的位置
  48. "quotes": [2, "single", { "allowTemplateLiterals": true }], // 强制使用一致的反勾号、双引号或单引号
  49. "space-infix-ops": [2, { "int32Hint": false }], // 要求操作符周围有空格
  50. "space-before-function-paren": [2, "always"], // 强制在 function的左括号之前使用一致的空格
  51. "spaced-comment": [2, "always"], // 强制在注释中 // 或 /* 使用一致的空格
  52. "switch-colon-spacing": [2, { "before": false, "after": true }], // 强制在 switch 的冒号左右有空格
  53. "template-tag-spacing": [2, "never"], // 要求或禁止在模板标记和它们的字面量之间有空格
  54. "wrap-regex": 2, // 要求正则表达式被括号括起来
  55. "object-property-newline": [2, { "allowAllPropertiesOnSameLine": true }], //强制将对象的属性放在不同的行上
  56. }
  57. };