为什么这会在eslint中触发逗号纠缠规则?

时间:2015-10-27 15:43:41

标签: eslint

这对我来说是正确的,但为什么eslint会显示规则违规,在最后一个属性的末尾缺少尾随逗号comma-dangle"凭据"?

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

.eslintrc

{
  "extends": "airbnb",
  "globals": {
    "__DEV__": true
  },
  "rules": {
    "react/jsx-quotes": 0,
    "jsx-quotes": [2, "prefer-double"]
  }
}

3 个答案:

答案 0 :(得分:6)

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

根据这一点,expected代码是

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

最后期望,

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

答案 1 :(得分:0)

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

[1] .eslintrc.json

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

[2] JsPrettier |更漂亮

"trailingComma": "all"

结果

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

答案 2 :(得分:-2)

使用以下规则避免出现这种情况

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