0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

eslint-config-* の比較表

Last updated at Posted at 2021-05-07

以下の4つの config の比較表です。

フレームワークを依らないルールについて比較したいので eslint-config-airbnb から React 関係の plugin を除外した eslint-config-airbnb-base を使用します。

バージョン情報

使用する各パッケージのバージョンは下記の通りです。

  • eslint: 7.25.0
  • eslint-config-standard: 16.0.2
  • eslint-config-airbnb-base: 14.2.1
  • eslint-config-google: 0.14.0
  • eslint-plugin-import: 2.22.1
  • eslint-plugin-node: 11.1.0
  • eslint-plugin-promise: 4.3.1

簡易版 (off, warn, error のみ)

Possible Errors

Rule eslint:recommended standard airbnb-base google
for-direction error error
getter-return error error
no-async-promise-executor error error error
no-await-in-loop error
no-compare-neg-zero error error error
no-cond-assign error error error off
no-console warn
no-constant-condition error error warn
no-control-regex error error error
no-debugger error error error
no-dupe-args error error error
no-dupe-else-if error off
no-dupe-keys error error error
no-duplicate-case error error error
no-empty error error error
no-empty-character-class error error error
no-ex-assign error error error
no-extra-boolean-cast error error error
no-extra-parens error off
no-extra-semi error error
no-func-assign error error error
no-import-assign error error off
no-inner-declarations error error
no-invalid-regexp error error error
no-irregular-whitespace error error error error
no-loss-of-precision error off
no-misleading-character-class error error error
no-obj-calls error error error
no-promise-executor-return off
no-prototype-builtins error error error
no-regex-spaces error error error
no-setter-return error off
no-sparse-arrays error error error
no-template-curly-in-string error error
no-unexpected-multiline error error error error
no-unreachable error error error
no-unreachable-loop error off
no-unsafe-finally error error error
no-unsafe-negation error error error
no-unsafe-optional-chaining
no-useless-backreference error off
require-atomic-updates off
use-isnan error error error
valid-typeof error error error

Best Practices

Rule eslint:recommended standard airbnb-base google
accessor-pairs error off
array-callback-return error error
block-scoped-var error
class-methods-use-this error
complexity off
consistent-return error
curly error error error
default-case error
default-case-last error off
default-param-last off
dot-location error error
dot-notation error error
eqeqeq error error
grouped-accessor-pairs off
guard-for-in error error
max-classes-per-file error
no-alert warn
no-caller error error error
no-case-declarations error error error
no-constructor-return off
no-div-regex off
no-else-return error
no-empty-function error
no-empty-pattern error error error
no-eq-null off
no-eval error error
no-extend-native error error error
no-extra-bind error error error
no-extra-label error
no-fallthrough error error error
no-floating-decimal error error
no-global-assign error error error
no-implicit-coercion off
no-implicit-globals off
no-implied-eval error error
no-invalid-this off error
no-iterator error error
no-labels error error
no-lone-blocks error error
no-loop-func error
no-magic-numbers off
no-multi-spaces error error error
no-multi-str error error error
no-new error error
no-new-func error error
no-new-wrappers error error error
no-nonoctal-decimal-escape
no-octal error error error
no-octal-escape error error
no-param-reassign error
no-proto error error
no-redeclare error error error
no-restricted-properties error
no-return-assign error error
no-return-await error
no-script-url error
no-self-assign error error error
no-self-compare error error
no-sequences error error
no-throw-literal error error error
no-unmodified-loop-condition error off
no-unused-expressions error error
no-unused-labels error error
no-useless-call error off
no-useless-catch error error error
no-useless-concat error
no-useless-escape error error error
no-useless-return error error
no-void error error
no-warning-comments off
no-with error error error error
prefer-named-capture-group off
prefer-promise-reject-errors error error error
prefer-regex-literals error off
radix error
require-await off
require-unicode-regexp off
vars-on-top error
wrap-iife error error
yoda error error

Strict Mode

Rule eslint:recommended standard airbnb-base google
strict error

Variables

Rule eslint:recommended standard airbnb-base google
init-declarations off
no-delete-var error error error
no-label-var error
no-restricted-globals error
no-shadow error
no-shadow-restricted-names error error error
no-undef error error error
no-undef-init error error
no-undefined off
no-unused-vars error error error error
no-use-before-define error error

Stylistic Issues

Rule eslint:recommended standard airbnb-base google
array-bracket-newline off off
array-bracket-spacing error error error
array-element-newline off off
block-spacing error error error
brace-style error error error
camelcase error error error
capitalized-comments off
comma-dangle error error error
comma-spacing error error error
comma-style error error error
computed-property-spacing error error error
consistent-this off
eol-last error error error
func-call-spacing error error error
func-name-matching off
func-names warn
func-style off
function-call-argument-newline off
function-paren-newline error
id-denylist off
id-length off
id-match off
implicit-arrow-linebreak error
indent error error error
jsx-quotes off
key-spacing error error error
keyword-spacing error error error
line-comment-position off
linebreak-style error error
lines-around-comment off
lines-between-class-members error error
max-depth off
max-len error error
max-lines off
max-lines-per-function off
max-nested-callbacks off
max-params off
max-statements off
max-statements-per-line off
multiline-comment-style off
multiline-ternary error off
new-cap error error error
new-parens error error
newline-per-chained-call error
no-array-constructor error error error
no-bitwise error
no-continue error
no-inline-comments off
no-lonely-if error
no-mixed-operators error error
no-mixed-spaces-and-tabs error error error error
no-multi-assign error
no-multiple-empty-lines error error error
no-negated-condition off
no-nested-ternary error
no-new-object error error error
no-plusplus error
no-restricted-syntax error
no-tabs error error error
no-ternary off
no-trailing-spaces error error error
no-underscore-dangle error
no-unneeded-ternary error error
no-whitespace-before-property error error
nonblock-statement-body-position error
object-curly-newline error error
object-curly-spacing error error error
object-property-newline error error
one-var error error error
one-var-declaration-per-line error
operator-assignment error
operator-linebreak error error error
padded-blocks error error error
padding-line-between-statements off
prefer-exponentiation-operator off
prefer-object-spread error
quote-props error error error
quotes error error error
semi error error error
semi-spacing error error error
semi-style error
sort-keys off
sort-vars off
space-before-blocks error error error
space-before-function-paren error error error
space-in-parens error error
space-infix-ops error error
space-unary-ops error error
spaced-comment error error error
switch-colon-spacing error error
template-tag-spacing error error
unicode-bom error error
wrap-regex off

ECMAScript 6

Rule eslint:recommended standard airbnb-base google
arrow-body-style error
arrow-parens error error
arrow-spacing error error
constructor-super error error error error
generator-star-spacing error error error
no-class-assign error error error
no-confusing-arrow error
no-const-assign error error error
no-dupe-class-members error error error
no-duplicate-imports off
no-new-symbol error error error error
no-restricted-exports off
no-restricted-imports off
no-this-before-super error error error error
no-useless-computed-key error error
no-useless-constructor error error
no-useless-rename error error
no-var warn error error
object-shorthand error
prefer-arrow-callback error
prefer-const error error error
prefer-destructuring error
prefer-numeric-literals error
prefer-rest-params error error
prefer-spread error error
prefer-template error
require-yield error error
rest-spread-spacing error error error
sort-imports off
symbol-description error error
template-curly-spacing error error
yield-star-spacing error error error

詳細版

Possible Errors

Rule eslint:recommended standard airbnb-base google
for-direction error error
getter-return error [
  "error",
  {
    "allowImplicit": true
  }
]
no-async-promise-executor error error error
no-await-in-loop error
no-compare-neg-zero error error error
no-cond-assign error error [
  "error",
  "always"
]
off
no-console warn
no-constant-condition error [
  "error",
  {
    "checkLoops": false
  }
]
warn
no-control-regex error error error
no-debugger error error error
no-dupe-args error error error
no-dupe-else-if error off
no-dupe-keys error error error
no-duplicate-case error error error
no-empty error [
  "error",
  {
    "allowEmptyCatch": true
  }
]
error
no-empty-character-class error error error
no-ex-assign error error error
no-extra-boolean-cast error error error
no-extra-parens [
  "error",
  "functions"
]
[
  "off",
  "all",
  {
    "conditionalAssign": true,
    "nestedBinaryExpressions": false,
    "returnAssign": false,
    "ignoreJSX": "all",
    "enforceForArrowConditionals": false
  }
]
no-extra-semi error error
no-func-assign error error error
no-import-assign error error off
no-inner-declarations error error
no-invalid-regexp error error error
no-irregular-whitespace error error error error
no-loss-of-precision error off
no-misleading-character-class error error error
no-obj-calls error error error
no-promise-executor-return off
no-prototype-builtins error error error
no-regex-spaces error error error
no-setter-return error off
no-sparse-arrays error error error
no-template-curly-in-string error error
no-unexpected-multiline error error error error
no-unreachable error error error
no-unreachable-loop error [
  "off",
  {
    "ignore": []
  }
]
no-unsafe-finally error error error
no-unsafe-negation error error error
no-unsafe-optional-chaining
no-useless-backreference error off
require-atomic-updates off
use-isnan error [
  "error",
  {
    "enforceForSwitchCase": true,
    "enforceForIndexOf": true
  }
]
error
valid-typeof error [
  "error",
  {
    "requireStringLiterals": true
  }
]
[
  "error",
  {
    "requireStringLiterals": true
  }
]

Best Practices

Rule eslint:recommended standard airbnb-base google
accessor-pairs [
  "error",
  {
    "setWithoutGet": true,
    "enforceForClassMembers": true,
    "getWithoutSet": false
  }
]
off
array-callback-return [
  "error",
  {
    "allowImplicit": false,
    "checkForEach": false
  }
]
[
  "error",
  {
    "allowImplicit": true,
    "checkForEach": false
  }
]
block-scoped-var error
class-methods-use-this [
  "error",
  {
    "exceptMethods": []
  }
]
complexity [
  "off",
  11
]
consistent-return error
curly [
  "error",
  "multi-line"
]
[
  "error",
  "multi-line"
]
[
  "error",
  "multi-line"
]
default-case [
  "error",
  {
    "commentPattern": "^no default$"
  }
]
default-case-last error off
default-param-last off
dot-location [
  "error",
  "property"
]
[
  "error",
  "property"
]
dot-notation [
  "error",
  {
    "allowKeywords": true,
    "allowPattern": ""
  }
]
[
  "error",
  {
    "allowKeywords": true,
    "allowPattern": ""
  }
]
eqeqeq [
  "error",
  "always",
  {
    "null": "ignore"
  }
]
[
  "error",
  "always",
  {
    "null": "ignore"
  }
]
grouped-accessor-pairs off
guard-for-in error error
max-classes-per-file [
  "error",
  1
]
no-alert warn
no-caller error error error
no-case-declarations error error error
no-constructor-return off
no-div-regex off
no-else-return [
  "error",
  {
    "allowElseIf": false
  }
]
no-empty-function [
  "error",
  {
    "allow": [
      "arrowFunctions",
      "functions",
      "methods"
    ]
  }
]
no-empty-pattern error error error
no-eq-null off
no-eval error error
no-extend-native error error error
no-extra-bind error error error
no-extra-label error
no-fallthrough error error error
no-floating-decimal error error
no-global-assign error error [
  "error",
  {
    "exceptions": []
  }
]
no-implicit-coercion [
  "off",
  {
    "boolean": false,
    "number": true,
    "string": true,
    "allow": []
  }
]
no-implicit-globals off
no-implied-eval error error
no-invalid-this off error
no-iterator error error
no-labels [
  "error",
  {
    "allowLoop": false,
    "allowSwitch": false
  }
]
[
  "error",
  {
    "allowLoop": false,
    "allowSwitch": false
  }
]
no-lone-blocks error error
no-loop-func error
no-magic-numbers [
  "off",
  {
    "ignore": [],
    "ignoreArrayIndexes": true,
    "enforceConst": true,
    "detectObjects": false
  }
]
no-multi-spaces error [
  "error",
  {
    "ignoreEOLComments": false
  }
]
error
no-multi-str error error error
no-new error error
no-new-func error error
no-new-wrappers error error error
no-nonoctal-decimal-escape
no-octal error error error
no-octal-escape error error
no-param-reassign [
  "error",
  {
    "props": true,
    "ignorePropertyModificationsFor": [
      "acc",
      "accumulator",
      "e",
      "ctx",
      "context",
      "req",
      "request",
      "res",
      "response",
      "$scope",
      "staticContext"
    ]
  }
]
no-proto error error
no-redeclare error [
  "error",
  {
    "builtinGlobals": false
  }
]
error
no-restricted-properties [
  "error",
  {
    "object": "arguments",
    "property": "callee",
    "message": "arguments.callee is deprecated"
  },
  {
    "object": "global",
    "property": "isFinite",
    "message": "Please use Number.isFinite instead"
  },
  {
    "object": "self",
    "property": "isFinite",
    "message": "Please use Number.isFinite instead"
  },
  {
    "object": "window",
    "property": "isFinite",
    "message": "Please use Number.isFinite instead"
  },
  {
    "object": "global",
    "property": "isNaN",
    "message": "Please use Number.isNaN instead"
  },
  {
    "object": "self",
    "property": "isNaN",
    "message": "Please use Number.isNaN instead"
  },
  {
    "object": "window",
    "property": "isNaN",
    "message": "Please use Number.isNaN instead"
  },
  {
    "property": "__defineGetter__",
    "message": "Please use Object.defineProperty instead."
  },
  {
    "property": "__defineSetter__",
    "message": "Please use Object.defineProperty instead."
  },
  {
    "object": "Math",
    "property": "pow",
    "message": "Use the exponentiation operator (**) instead."
  }
]
no-return-assign [
  "error",
  "except-parens"
]
[
  "error",
  "always"
]
no-return-await error
no-script-url error
no-self-assign error [
  "error",
  {
    "props": true
  }
]
[
  "error",
  {
    "props": true
  }
]
no-self-compare error error
no-sequences error error
no-throw-literal error error error
no-unmodified-loop-condition error off
no-unused-expressions [
  "error",
  {
    "allowShortCircuit": true,
    "allowTernary": true,
    "allowTaggedTemplates": true,
    "enforceForJSX": false
  }
]
[
  "error",
  {
    "allowShortCircuit": false,
    "allowTernary": false,
    "allowTaggedTemplates": false,
    "enforceForJSX": false
  }
]
no-unused-labels error error
no-useless-call error off
no-useless-catch error error error
no-useless-concat error
no-useless-escape error error error
no-useless-return error error
no-void error error
no-warning-comments [
  "off",
  {
    "terms": [
      "todo",
      "fixme",
      "xxx"
    ],
    "location": "start"
  }
]
no-with error error error error
prefer-named-capture-group off
prefer-promise-reject-errors error [
  "error",
  {
    "allowEmptyReject": true
  }
]
error
prefer-regex-literals [
  "error",
  {
    "disallowRedundantWrapping": true
  }
]
off
radix error
require-await off
require-unicode-regexp off
vars-on-top error
wrap-iife [
  "error",
  "any",
  {
    "functionPrototypeMethods": true
  }
]
[
  "error",
  "outside",
  {
    "functionPrototypeMethods": false
  }
]
yoda [
  "error",
  "never"
]
error

Strict Mode

Rule eslint:recommended standard airbnb-base google
strict [
  "error",
  "never"
]

Variables

Rule eslint:recommended standard airbnb-base google
init-declarations off
no-delete-var error error error
no-label-var error
no-restricted-globals [
  "error",
  {
    "name": "isFinite",
    "message": "Use Number.isFinite instead https://github.com/airbnb/javascript#standard-library--isfinite"
  },
  {
    "name": "isNaN",
    "message": "Use Number.isNaN instead https://github.com/airbnb/javascript#standard-library--isnan"
  },
  "addEventListener",
  "blur",
  "close",
  "closed",
  "confirm",
  "defaultStatus",
  "defaultstatus",
  "event",
  "external",
  "find",
  "focus",
  "frameElement",
  "frames",
  "history",
  "innerHeight",
  "innerWidth",
  "length",
  "location",
  "locationbar",
  "menubar",
  "moveBy",
  "moveTo",
  "name",
  "onblur",
  "onerror",
  "onfocus",
  "onload",
  "onresize",
  "onunload",
  "open",
  "opener",
  "opera",
  "outerHeight",
  "outerWidth",
  "pageXOffset",
  "pageYOffset",
  "parent",
  "print",
  "removeEventListener",
  "resizeBy",
  "resizeTo",
  "screen",
  "screenLeft",
  "screenTop",
  "screenX",
  "screenY",
  "scroll",
  "scrollbars",
  "scrollBy",
  "scrollTo",
  "scrollX",
  "scrollY",
  "self",
  "status",
  "statusbar",
  "stop",
  "toolbar",
  "top"
]
no-shadow error
no-shadow-restricted-names error error error
no-undef error error error
no-undef-init error error
no-undefined off
no-unused-vars error [
  "error",
  {
    "args": "none",
    "caughtErrors": "none",
    "ignoreRestSiblings": true,
    "vars": "all"
  }
]
[
  "error",
  {
    "vars": "all",
    "args": "after-used",
    "ignoreRestSiblings": true
  }
]
[
  "error",
  {
    "args": "none"
  }
]
no-use-before-define [
  "error",
  {
    "functions": false,
    "classes": false,
    "variables": false
  }
]
[
  "error",
  {
    "functions": true,
    "classes": true,
    "variables": true
  }
]

Stylistic Issues

Rule eslint:recommended standard airbnb-base google
array-bracket-newline [
  "off",
  "consistent"
]
off
array-bracket-spacing [
  "error",
  "never"
]
[
  "error",
  "never"
]
[
  "error",
  "never"
]
array-element-newline [
  "off",
  {
    "multiline": true,
    "minItems": 3
  }
]
off
block-spacing [
  "error",
  "always"
]
[
  "error",
  "always"
]
[
  "error",
  "never"
]
brace-style [
  "error",
  "1tbs",
  {
    "allowSingleLine": true
  }
]
[
  "error",
  "1tbs",
  {
    "allowSingleLine": true
  }
]
error
camelcase [
  "error",
  {
    "allow": [
      "^UNSAFE_"
    ],
    "properties": "never",
    "ignoreGlobals": true,
    "ignoreDestructuring": false,
    "ignoreImports": false
  }
]
[
  "error",
  {
    "properties": "never",
    "ignoreDestructuring": false,
    "ignoreImports": false,
    "ignoreGlobals": false
  }
]
[
  "error",
  {
    "properties": "never",
    "ignoreDestructuring": false,
    "ignoreImports": false,
    "ignoreGlobals": false
  }
]
capitalized-comments [
  "off",
  "never",
  {
    "line": {
      "ignorePattern": ".",
      "ignoreInlineComments": true,
      "ignoreConsecutiveComments": true
    },
    "block": {
      "ignorePattern": ".
",
      "ignoreInlineComments": true,
      "ignoreConsecutiveComments": true
    }
  }
]
comma-dangle [
  "error",
  {
    "arrays": "never",
    "objects": "never",
    "imports": "never",
    "exports": "never",
    "functions": "never"
  }
]
[
  "error",
  {
    "arrays": "always-multiline",
    "objects": "always-multiline",
    "imports": "always-multiline",
    "exports": "always-multiline",
    "functions": "always-multiline"
  }
]
[
  "error",
  "always-multiline"
]
comma-spacing [
  "error",
  {
    "before": false,
    "after": true
  }
]
[
  "error",
  {
    "before": false,
    "after": true
  }
]
error
comma-style [
  "error",
  "last"
]
[
  "error",
  "last",
  {
    "exceptions": {
      "ArrayExpression": false,
      "ArrayPattern": false,
      "ArrowFunctionExpression": false,
      "CallExpression": false,
      "FunctionDeclaration": false,
      "FunctionExpression": false,
      "ImportDeclaration": false,
      "ObjectExpression": false,
      "ObjectPattern": false,
      "VariableDeclaration": false,
      "NewExpression": false
    }
  }
]
error
computed-property-spacing [
  "error",
  "never",
  {
    "enforceForClassMembers": true
  }
]
[
  "error",
  "never"
]
error
consistent-this off
eol-last error [
  "error",
  "always"
]
error
func-call-spacing [
  "error",
  "never"
]
[
  "error",
  "never"
]
error
func-name-matching [
  "off",
  "always",
  {
    "includeCommonJSModuleExports": false,
    "considerPropertyDescriptor": true
  }
]
func-names warn
func-style [
  "off",
  "expression"
]
function-call-argument-newline [
  "off",
  "consistent"
]
function-paren-newline [
  "error",
  "consistent"
]
id-denylist off
id-length off
id-match off
implicit-arrow-linebreak [
  "error",
  "beside"
]
indent [
  "error",
  2,
  {
    "SwitchCase": 1,
    "VariableDeclarator": 1,
    "outerIIFEBody": 1,
    "MemberExpression": 1,
    "FunctionDeclaration": {
      "parameters": 1,
      "body": 1
    },
    "FunctionExpression": {
      "parameters": 1,
      "body": 1
    },
    "CallExpression": {
      "arguments": 1
    },
    "ArrayExpression": 1,
    "ObjectExpression": 1,
    "ImportDeclaration": 1,
    "flatTernaryExpressions": false,
    "ignoreComments": false,
    "ignoredNodes": [
      "TemplateLiteral ",
      "JSXElement",
      "JSXElement > 
",
      "JSXAttribute",
      "JSXIdentifier",
      "JSXNamespacedName",
      "JSXMemberExpression",
      "JSXSpreadAttribute",
      "JSXExpressionContainer",
      "JSXOpeningElement",
      "JSXClosingElement",
      "JSXFragment",
      "JSXOpeningFragment",
      "JSXClosingFragment",
      "JSXText",
      "JSXEmptyExpression",
      "JSXSpreadChild"
    ],
    "offsetTernaryExpressions": true
  }
]
[
  "error",
  2,
  {
    "SwitchCase": 1,
    "VariableDeclarator": 1,
    "outerIIFEBody": 1,
    "FunctionDeclaration": {
      "parameters": 1,
      "body": 1
    },
    "FunctionExpression": {
      "parameters": 1,
      "body": 1
    },
    "CallExpression": {
      "arguments": 1
    },
    "ArrayExpression": 1,
    "ObjectExpression": 1,
    "ImportDeclaration": 1,
    "flatTernaryExpressions": false,
    "ignoredNodes": [
      "JSXElement",
      "JSXElement > *",
      "JSXAttribute",
      "JSXIdentifier",
      "JSXNamespacedName",
      "JSXMemberExpression",
      "JSXSpreadAttribute",
      "JSXExpressionContainer",
      "JSXOpeningElement",
      "JSXClosingElement",
      "JSXFragment",
      "JSXOpeningFragment",
      "JSXClosingFragment",
      "JSXText",
      "JSXEmptyExpression",
      "JSXSpreadChild"
    ],
    "ignoreComments": false,
    "offsetTernaryExpressions": false
  }
]
[
  "error",
  2,
  {
    "CallExpression": {
      "arguments": 2
    },
    "FunctionDeclaration": {
      "body": 1,
      "parameters": 2
    },
    "FunctionExpression": {
      "body": 1,
      "parameters": 2
    },
    "MemberExpression": 2,
    "ObjectExpression": 1,
    "SwitchCase": 1,
    "ignoredNodes": [
      "ConditionalExpression"
    ],
    "flatTernaryExpressions": false,
    "offsetTernaryExpressions": false,
    "ignoreComments": false
  }
]
jsx-quotes [
  "off",
  "prefer-double"
]
key-spacing [
  "error",
  {
    "beforeColon": false,
    "afterColon": true
  }
]
[
  "error",
  {
    "beforeColon": false,
    "afterColon": true
  }
]
error
keyword-spacing [
  "error",
  {
    "before": true,
    "after": true
  }
]
[
  "error",
  {
    "before": true,
    "after": true,
    "overrides": {
      "return": {
        "after": true
      },
      "throw": {
        "after": true
      },
      "case": {
        "after": true
      }
    }
  }
]
error
line-comment-position [
  "off",
  {
    "position": "above",
    "ignorePattern": "",
    "applyDefaultPatterns": true
  }
]
linebreak-style [
  "error",
  "unix"
]
error
lines-around-comment off
lines-between-class-members [
  "error",
  "always",
  {
    "exceptAfterSingleLine": true
  }
]
[
  "error",
  "always",
  {
    "exceptAfterSingleLine": false
  }
]
max-depth [
  "off",
  4
]
max-len [
  "error",
  100,
  2,
  {
    "ignoreUrls": true,
    "ignoreComments": false,
    "ignoreRegExpLiterals": true,
    "ignoreStrings": true,
    "ignoreTemplateLiterals": true
  }
]
[
  "error",
  {
    "code": 80,
    "tabWidth": 2,
    "ignoreUrls": true,
    "ignorePattern": "goog.(module|require)"
  }
]
max-lines [
  "off",
  {
    "max": 300,
    "skipBlankLines": true,
    "skipComments": true
  }
]
max-lines-per-function [
  "off",
  {
    "max": 50,
    "skipBlankLines": true,
    "skipComments": true,
    "IIFEs": true
  }
]
max-nested-callbacks off
max-params [
  "off",
  3
]
max-statements [
  "off",
  10
]
max-statements-per-line [
  "off",
  {
    "max": 1
  }
]
multiline-comment-style [
  "off",
  "starred-block"
]
multiline-ternary [
  "error",
  "always-multiline"
]
[
  "off",
  "never"
]
new-cap [
  "error",
  {
    "newIsCap": true,
    "capIsNew": false,
    "properties": true
  }
]
[
  "error",
  {
    "newIsCap": true,
    "newIsCapExceptions": [],
    "capIsNew": false,
    "capIsNewExceptions": [
      "Immutable.Map",
      "Immutable.Set",
      "Immutable.List"
    ],
    "properties": true
  }
]
error
new-parens error error
newline-per-chained-call [
  "error",
  {
    "ignoreChainWithDepth": 4
  }
]
no-array-constructor error error error
no-bitwise error
no-continue error
no-inline-comments off
no-lonely-if error
no-mixed-operators [
  "error",
  {
    "groups": [
      [
        "==",
        "!=",
        "===",
        "!==",
        ">",
        ">=",
        "<",
        "<="
      ],
      [
        "&&",
        "||"
      ],
      [
        "in",
        "instanceof"
      ]
    ],
    "allowSamePrecedence": true
  }
]
[
  "error",
  {
    "groups": [
      [
        "%",
        "**"
      ],
      [
        "%",
        "+"
      ],
      [
        "%",
        "-"
      ],
      [
        "%",
        ""
      ],
      [
        "%",
        "/"
      ],
      [
        "/",
        "
"
      ],
      [
        "&",
        "|",
        "<<",
        ">>",
        ">>>"
      ],
      [
        "==",
        "!=",
        "===",
        "!=="
      ],
      [
        "&&",
        "||"
      ]
    ],
    "allowSamePrecedence": false
  }
]
no-mixed-spaces-and-tabs error error error error
no-multi-assign error
no-multiple-empty-lines [
  "error",
  {
    "max": 1,
    "maxEOF": 0
  }
]
[
  "error",
  {
    "max": 1,
    "maxBOF": 0,
    "maxEOF": 0
  }
]
[
  "error",
  {
    "max": 2
  }
]
no-negated-condition off
no-nested-ternary error
no-new-object error error error
no-plusplus error
no-restricted-syntax [
  "error",
  {
    "selector": "ForInStatement",
    "message": "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array."
  },
  {
    "selector": "ForOfStatement",
    "message": "iterators/generators require regenerator-runtime, which is too heavyweight for this guide to allow them. Separately, loops should be avoided in favor of array iterations."
  },
  {
    "selector": "LabeledStatement",
    "message": "Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand."
  },
  {
    "selector": "WithStatement",
    "message": "`with` is disallowed in strict mode because it makes code impossible to predict and optimize."
  }
]
no-tabs error error error
no-ternary off
no-trailing-spaces error [
  "error",
  {
    "skipBlankLines": false,
    "ignoreComments": false
  }
]
error
no-underscore-dangle [
  "error",
  {
    "allow": [],
    "allowAfterThis": false,
    "allowAfterSuper": false,
    "enforceInMethodNames": true,
    "allowAfterThisConstructor": false,
    "allowFunctionParams": true
  }
]
no-unneeded-ternary [
  "error",
  {
    "defaultAssignment": false
  }
]
[
  "error",
  {
    "defaultAssignment": false
  }
]
no-whitespace-before-property error error
nonblock-statement-body-position [
  "error",
  "beside",
  {
    "overrides": {}
  }
]
object-curly-newline [
  "error",
  {
    "multiline": true,
    "consistent": true
  }
]
[
  "error",
  {
    "ObjectExpression": {
      "minProperties": 4,
      "multiline": true,
      "consistent": true
    },
    "ObjectPattern": {
      "minProperties": 4,
      "multiline": true,
      "consistent": true
    },
    "ImportDeclaration": {
      "minProperties": 4,
      "multiline": true,
      "consistent": true
    },
    "ExportDeclaration": {
      "minProperties": 4,
      "multiline": true,
      "consistent": true
    }
  }
]
object-curly-spacing [
  "error",
  "always"
]
[
  "error",
  "always"
]
error
object-property-newline [
  "error",
  {
    "allowMultiplePropertiesPerLine": true,
    "allowAllPropertiesOnSameLine": false
  }
]
[
  "error",
  {
    "allowAllPropertiesOnSameLine": true,
    "allowMultiplePropertiesPerLine": false
  }
]
one-var [
  "error",
  {
    "initialized": "never"
  }
]
[
  "error",
  "never"
]
[
  "error",
  {
    "var": "never",
    "let": "never",
    "const": "never"
  }
]
one-var-declaration-per-line [
  "error",
  "always"
]
operator-assignment [
  "error",
  "always"
]
operator-linebreak [
  "error",
  "after",
  {
    "overrides": {
      "?": "before",
      ":": "before",
      "|>": "before"
    }
  }
]
[
  "error",
  "before",
  {
    "overrides": {
      "=": "none"
    }
  }
]
[
  "error",
  "after"
]
padded-blocks [
  "error",
  {
    "blocks": "never",
    "switches": "never",
    "classes": "never"
  }
]
[
  "error",
  {
    "blocks": "never",
    "classes": "never",
    "switches": "never"
  },
  {
    "allowSingleLineBlocks": true
  }
]
[
  "error",
  "never"
]
padding-line-between-statements off
prefer-exponentiation-operator off
prefer-object-spread error
quote-props [
  "error",
  "as-needed"
]
[
  "error",
  "as-needed",
  {
    "keywords": false,
    "unnecessary": true,
    "numbers": false
  }
]
[
  "error",
  "consistent"
]
quotes [
  "error",
  "single",
  {
    "avoidEscape": true,
    "allowTemplateLiterals": false
  }
]
[
  "error",
  "single",
  {
    "avoidEscape": true
  }
]
[
  "error",
  "single",
  {
    "allowTemplateLiterals": true
  }
]
semi [
  "error",
  "never"
]
[
  "error",
  "always"
]
error
semi-spacing [
  "error",
  {
    "before": false,
    "after": true
  }
]
[
  "error",
  {
    "before": false,
    "after": true
  }
]
error
semi-style [
  "error",
  "last"
]
sort-keys [
  "off",
  "asc",
  {
    "caseSensitive": false,
    "natural": true
  }
]
sort-vars off
space-before-blocks [
  "error",
  "always"
]
error error
space-before-function-paren [
  "error",
  "always"
]
[
  "error",
  {
    "anonymous": "always",
    "named": "never",
    "asyncArrow": "always"
  }
]
[
  "error",
  {
    "asyncArrow": "always",
    "anonymous": "never",
    "named": "never"
  }
]
space-in-parens [
  "error",
  "never"
]
[
  "error",
  "never"
]
space-infix-ops error error
space-unary-ops [
  "error",
  {
    "words": true,
    "nonwords": false
  }
]
[
  "error",
  {
    "words": true,
    "nonwords": false,
    "overrides": {}
  }
]
spaced-comment [
  "error",
  "always",
  {
    "line": {
      "markers": [
        "*package",
        "!",
        "/",
        ",",
        "="
      ]
    },
    "block": {
      "balanced": true,
      "markers": [
        "package",
        "!",
        ",",
        ":",
        "::",
        "flow-include"
      ],
      "exceptions": [
        "
"
      ]
    }
  }
]
[
  "error",
  "always",
  {
    "line": {
      "exceptions": [
        "-",
        "+"
      ],
      "markers": [
        "=",
        "!",
        "/"
      ]
    },
    "block": {
      "exceptions": [
        "-",
        "+"
      ],
      "markers": [
        "=",
        "!",
        ":",
        "::"
      ],
      "balanced": true
    }
  }
]
[
  "error",
  "always"
]
switch-colon-spacing [
  "error",
  {
    "after": true,
    "before": false
  }
]
error
template-tag-spacing [
  "error",
  "never"
]
[
  "error",
  "never"
]
unicode-bom [
  "error",
  "never"
]
[
  "error",
  "never"
]
wrap-regex off

ECMAScript 6

Rule eslint:recommended standard airbnb-base google
arrow-body-style [
  "error",
  "as-needed",
  {
    "requireReturnForObjectLiteral": false
  }
]
arrow-parens [
  "error",
  "always"
]
[
  "error",
  "always"
]
arrow-spacing [
  "error",
  {
    "before": true,
    "after": true
  }
]
[
  "error",
  {
    "before": true,
    "after": true
  }
]
constructor-super error error error error
generator-star-spacing [
  "error",
  {
    "before": true,
    "after": true
  }
]
[
  "error",
  {
    "before": false,
    "after": true
  }
]
[
  "error",
  "after"
]
no-class-assign error error error
no-confusing-arrow [
  "error",
  {
    "allowParens": true
  }
]
no-const-assign error error error
no-dupe-class-members error error error
no-duplicate-imports off
no-new-symbol error error error error
no-restricted-exports [
  "off",
  {
    "restrictedNamedExports": [
      "default",
      "then"
    ]
  }
]
no-restricted-imports [
  "off",
  {
    "paths": [],
    "patterns": []
  }
]
no-this-before-super error error error error
no-useless-computed-key error error
no-useless-constructor error error
no-useless-rename error [
  "error",
  {
    "ignoreDestructuring": false,
    "ignoreImport": false,
    "ignoreExport": false
  }
]
no-var warn error error
object-shorthand [
  "error",
  "always",
  {
    "ignoreConstructors": false,
    "avoidQuotes": true
  }
]
prefer-arrow-callback [
  "error",
  {
    "allowNamedFunctions": false,
    "allowUnboundThis": true
  }
]
prefer-const [
  "error",
  {
    "destructuring": "all",
    "ignoreReadBeforeAssign": false
  }
]
[
  "error",
  {
    "destructuring": "any",
    "ignoreReadBeforeAssign": true
  }
]
[
  "error",
  {
    "destructuring": "all",
    "ignoreReadBeforeAssign": false
  }
]
prefer-destructuring [
  "error",
  {
    "VariableDeclarator": {
      "array": false,
      "object": true
    },
    "AssignmentExpression": {
      "array": true,
      "object": false
    }
  },
  {
    "enforceForRenamedProperties": false
  }
]
prefer-numeric-literals error
prefer-rest-params error error
prefer-spread error error
prefer-template error
require-yield error error
rest-spread-spacing [
  "error",
  "never"
]
[
  "error",
  "never"
]
error
sort-imports [
  "off",
  {
    "ignoreCase": false,
    "ignoreDeclarationSort": false,
    "ignoreMemberSort": false,
    "memberSyntaxSortOrder": [
      "none",
      "all",
      "multiple",
      "single"
    ]
  }
]
symbol-description error error
template-curly-spacing [
  "error",
  "never"
]
error
yield-star-spacing [
  "error",
  "both"
]
[
  "error",
  "after"
]
[
  "error",
  "after"
]
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?