我在WebStorm中有一个ES6项目,显然有时使用一些内置对象,如Math
或JSON
。
HTML / ECMAScript 5和ECMAScript 6都在“Settings /(...)/ JavaScript / Libraries”中启用,但WebStorm仍然建议Math
和JSON
缺少导入。
当我创建一个空的新项目时它工作正常。我还注意到,在这样的新项目中选择JSON
并按下CTRL + B时,WebStorm会显示其内部库中的定义。
相反,在我的主项目中,它显示了一些来自完全不相关的项目的TypeScript。如果我在项目外移动带有打字稿的文件夹,它似乎有效。
Nota bene,我有错误的文件不是用TypeScript编写的,不包含任何与TypeScript相关的内容,也不以任何方式使用TypeScript处理。它仅使用ES6到ES5的转换器进行处理。
这对我有用:
我重新启动了WebStorm并且警告消失了。
使用基于TypeScript的子项目将目录标记为已排除(右键单击→“将目录标记为”→“已排除”)可以解决问题,而无需将其从项目中物理删除。
我有同样的问题,我找到了解决方案: 对我而言,这是因为我在ECMA 6中有一个带有子文件夹的ECMA 5.1项目。 只需将其反转:在ECMA 5.1中设置所有ECMA 5.1文件,并将主项目版本设置为ECMA 6。