experimentalObjectRestSpread 在 ESLint 中不起作用

experimentalObjectRestSpread not working in ESLint

我正在尝试让 ESLint 让我使用对象 rest/spread。尽管我尽了最大的努力,我还是不断收到这个错误:

[js] Property assignment expected.

当我将鼠标悬停在带有红色波浪线的省略号 (...) 上时。

我的 .eslinstrc.json 看起来像这样:

{
    "extends": "airbnb",
    "plugins": [
        "react"
    ],
    "parserOptions": {
        "ecmaFeatures": {
            "experimentalObjectRestSpread": true
        }
    },
    "rules": {
        "no-console": 0
    }
}

我确信偏好正在被阅读,因为 no-console 规则、react 插件和 airbnb 风格指南正在按预期工作。

启用对象rest/spread,experimentalObjectRestSpread是这里的关键(哈哈),it seems to be working for other people。但是它拒绝为我工作。我很茫然\o/

更新:我正在使用 Visual Studio 代码 v1.2.1

我假设您使用的是 vscode 是否正确?我认为错误来自 vscode 本身。否则,错误消息将以 [eslint] 而不是 [js] 开头。

看起来 vscode 目前不支持对象展开运算符(参见:Issue on Github)。

您可以使用设置 { "javascript.validate.enable": false } 禁用 JavaScript 验证。

另一种选择是 Object.assign:

const foo = {
  a: 1
};
const bar = 'bar';
const res = Object.assign(
    {},
    foo,
    {bar}
);