ESLint显示初始化为箭头函数的类实例属性的错误

时间:2017-08-17 03:42:11

标签: javascript ecmascript-6 babeljs eslint

可能类似于How do I configure ESLint to allow fat arrow class methods

当类方法定义为箭头函数Eslint时,突出显示错误'method'未定义。 (无为undef)。 简单的例子

class abc {
  d = () => {
    // method body
  }
}

这里没有'd'

class method is not defined

我的.eslintrc配置

{
    "env": {
        "browser": true,
        "es6": true
    },
    "extends": [
      "eslint:recommended",
      "plugin:flowtype/recommended"
    ],
    "parser": "babel-eslint",
    "parserOptions": {
        "ecmaFeatures": {
            "experimentalObjectRestSpread": true,
            "jsx": true
        },
        "sourceType": "module"
    },
    "plugins": [
        "react",
        "flowtype"
    ],
    "rules": {
        "indent": [
            "error",
            2
        ],
        "linebreak-style": [
            "error",
            "unix"
        ],
        "quotes": [
            "error",
            "single"
        ],
        "semi": [
            "error",
            "always"
        ]
    }
}

.babelrc

{
  "presets": ["react", "es2015", "stage-1", "flow"]
}

也许我需要申报一些规则?

2 个答案:

答案 0 :(得分:3)

MinusFour answer所述,我尝试通过命令行运行eslint,但我没有看到错误。

我的编辑器配置错误。 (原子的linter-eslint包中node_modules文件夹的路径错误)。删除此路径并重新启动编辑器后,一切正常。

答案 1 :(得分:0)

This is something that hasn't made its way into Javascript yet。它可以作为带有babel的实验性插件使用,因此您需要使用babel-eslint更改eslint的默认解析器。