[在JetBrains PhpStorm 2019.3中,我使用JavaScript ES6。现在,如果我安装例如Foundation for Sites并将其与以下代码一起使用在名为main.js的文件中:
import {Dropdown, DropdownMenu, Accordion} from 'foundation-sites';
['foundation-sites'
上的CTRL +单击,PhpStorm将我发送到:
node_modules / foundation-sites / dist / js / foundation.d.ts
即使我不使用TypeScript。预期的行为将跳至:
node_modules / foundation-sites / dist / js / foundation.es6.js
我可以通过更改基础站点typings
中的package.json字段来更改此行为:
- "typings": "dist/js/foundation.d.ts",
+ "typings": "dist/js/foundation.es6.js",
但是,更改第三方代码中的package.json字段只是为了修复PhpStorm移至错误的文件,这似乎很不方便。不使用TypeScript时如何使PhpStorm忽略TypeScript引用和字段?
无法告诉IDE忽略typings
字段-它使用TypeScript定义文件来增强其对库方法的代码完成。通常,它使用以下规则进行导航:
node_modules/@types
文件夹中安装了类型定义,则在使用Ctrl+click
时,IDE会尝试导航到库的JavaScript源。请注意,这仅适用于在.d.ts
文件中定义为类,变量或函数(而不是接口或类型)的符号。更糟糕的是,尽管foundation-sites
捆绑了键入,但这些键入不正确(请参阅https://github.com/foundation/foundation-sites/issues/11653和链接的票证,因此IDEA无法将ES6导入映射到foundation.d.ts
的接口。] >
我唯一想到的解决方法是注释掉"typings": "dist/js/foundation.d.ts",
中的package.json
-IDEA随后将使用foundation.es6.js
中的声明来完成和导航