我正在尝试使用Javascript ES6导入语法,WebPack配置为使用client
和node_modules
作为解析导入的根路径。
IntelliJ Idea从"node_modules"目录中发现模块,但无法从"client"目录中解析路径。
例如:当我使用
import ImmutableStore from 'alt/utils/ImmutableUtil';
- IntelliJ找到合适的路径,因为alt
模块在node_modules
目录import CustomiserActions from 'js/actions/Customiser.actions.js';
-它不工作,因为js
模块在client
目录。
我在模块设置/项目设置/标记目录作为源根/添加外部库中尝试了许多选项,但似乎没有任何工作。
IntelliJ Idea版本:14.1.5
我知道这是旧线程。仅供参考,将父目录(在本例中为'js')标记为'资源根',然后智能感知将在2016版本中工作。
我成功的秘诀:
File> Invalidate cache/Restart…
根据我自己的经验,IntelliJ将默认在node_modules
目录中搜索源文件,除非它是像这样的相对路径:
import CustomiserActions from './js/actions/Customiser.actions.js';
根据您的项目的结构/构建方式,这可能是您的问题的解决方案。
在我的情况下,我有一个Javascript项目和*. JS文件不被识别为Javascript文件(注意JS图标),而是作为一个文本文件。
IntelliJ -> Preferences... -> Editor -> File Types
确保*.js扩展名列在JavaScript下,而不在文本文件类型