【问题标题】:experimentalObjectRestSpread not working in ESLintExperimentObjectRestSpread 在 ESLint 中不起作用
【发布时间】:2016-10-17 11:17:50
【问题描述】:

我正在尝试让 ESLint 让我使用对象休息/传播。尽管我尽了最大努力,但我仍然收到此错误:

[js] Property assignment expected.

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

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

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

我确信首选项正在被读取,因为no-console 规则、react 插件和airbnb 样式指南正在按预期工作。

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

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

【问题讨论】:

  • const 声明是否在块范围内? ...foo 的预期结果是什么?

标签: javascript visual-studio-code eslint


【解决方案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}
);

【讨论】:

  • Aaaaaarg 感谢这个 :D 这让我发疯了,哈哈。是的,我一直在使用 Object.assign,但它真的很糟糕,因为很多 React 项目都使用对象休息/传播:/希望 VSC 很快就能得到支持!
  • 现在支持对象扩展运算符!见:Release notes Visual Studio Code V1.6
猜你喜欢
  • 2017-12-18
  • 2021-11-12
  • 2021-06-21
  • 2019-03-16
  • 2018-02-04
  • 2020-11-06
  • 2021-10-20
  • 2018-01-25
  • 2017-07-24
相关资源
最近更新 更多