2

我在我的代码中使用反射。问题是 Eslint 认为它是一个未声明的变量。我收到此错误:

eslint --config ./.eslintrc.json src

30:25  error  'Reflect' is not defined  no-undef
32:9   error  'Reflect' is not defined  no-undef
39:21  error  'Reflect' is not defined  no-undef
40:5   error  'Reflect' is not defined  no-undef

我的.eslintrc文件设置为 ECMAScript 2015:

"parserOptions": {
    "ecmaVersion": 2015,
    "sourceType": "module",
    "ecmaFeatures": {
      "globalReturn": true
    }
  }

不知道为什么将no-undef规则应用于反射。我所有的代码通常都是 ECMAScript 2015,没什么不寻常的。

4

1 回答 1

3

除了设置ecmaVersion,您还需要告诉它包含“es6”全局变量:

{
    "env": {
        "es6": true
    }
}

(您可能也希望其他人在其中,例如browser。)

更多在文档中的指定环境中。

于 2018-10-04T06:05:08.917 回答