0

我有以下代码作为 JS 函数的一部分Highcharts Highmaps

map.series.map((el, i) => {
    el.data.map((e, j) => {
       if(e.code == ctry) {
            map.series[i].data[j].update({color: preHoverColor});
            map.series[i].data[j].setState();
            map.tooltip.hide();
        }
    })
})

=>PhpStorm 在with处将此代码突出显示为错误expression expected

我在 PhpStorm 中为 JS 语法错过了一个设置,因此该代码被识别为有效吗?代码工作正常。

4

2 回答 2

0

在 IDE 中出现这种刮擦不当行为的许多原因

解决方案 1: Webstorm > Preferences > Languages and Frameworks -> Javascript > ECMA Script6

重要提示:不要从文件 > 默认设置转到语言和框架

解决方案 2: PHPStorm 也是如此,但我意识到错误是从 JSHint 生成的。看起来 PHPStorm/WebStorm 没有将版本同步到 JSHint。

在 Code Quality Tools > JSHint 下,确保选中“EcmaScript.next esnext”。

解决方案 3:很可能将 node_modules 文件夹添加到 javascript 库中(WebStorm 会提示您在项目打开时配置库)。库中的 Javascript 文件默认关闭检查和错误/语法突出显示。您仍然可以使用右下角的 Hector 图标为特定文件启用它们(

http://www.jetbrains.com/webstorm/webhelp/changeing-highlighting-level-for-the-current-file.html

)

解决方案4:清理系统缓存清理系统缓存:

在主菜单上,选择文件 | 使缓存无效/重新启动。将出现 Invalidate Caches 消息,通知您缓存将在下次启动时失效并重建。使用对话框中的按钮使缓存无效、重新启动 PhpStorm 或两者兼而有之。

重要的是要注意以下几点:

  • 在 PhpStorm 重新启动之前,这些文件实际上并没有被删除。
  • 打开和关闭项目不会导致删除任何文件。
于 2018-04-03T21:30:41.670 回答
0

确保您已在Preferences |ECMAScript 6中选择了Javascript 语言版本。语言和框架 | JavaScript

于 2018-04-03T18:48:35.977 回答