为什么这会触发 eslint 中的逗号悬垂规则?

问题描述 投票:0回答:3

这对我来说看起来是正确的,但为什么 ESlint 显示违反规则,在最后一个属性末尾缺少尾随逗号“comma-dangle”

credentials

  dispatch({
    type: LOGIN_USER,
    payload: credentials
  });

.eslintrc

{
  "extends": "airbnb",
  "globals": {
    "__DEV__": true
  },
  "rules": {
    "react/jsx-quotes": 0,
    "jsx-quotes": [2, "prefer-double"]
  }
}
eslint
3个回答
15
投票

基于

airbnb
配置,规则设置如下
comma-dangle: [2, "always-multiline"]

据此,

expected
代码是

  dispatch({
    type: LOGIN_USER,
    payload: credentials,
  });

最后预计会出现

,

有关规则的更多信息:http://eslint.org/docs/rules/comma-dangle


10
投票

我使用以下组合(这对我有用)

[1].eslintrc.json

"rules": {        
        "comma-dangle": [2, "always-multiline"]         
    }

[2] JsPrettier |更漂亮

"trailingComma": "all"

结果

dispatch({
  type: LOGIN_USER,
  payload: credentials,
});

-3
投票

使用以下规则来避免它

rules: {
    'comma-dangle': ['error', 'never']
  }

//或

 "comma-dangle": ["error", {
        "arrays": "never",
        "objects": "never",
        "imports": "never",
        "exports": "never",
        "functions": "never"
    }]

参考:https://eslint.org/docs/rules/comma-dangle

© www.soinside.com 2019 - 2024. All rights reserved.