2016-08-18 260 views
2

我有一个使用Webpack的项目设置。我有不同的目录中的几个别名:WebStorm无法识别导入的index.ts文件

alias { 
    shared/common: path.join(__dirname, 'src/main/js/publish/shared/common') 
    app/common: path.join(__dirname, 'src/main/js/publish/app/common') 
} 

在一些文件,我想从一个barrel导入不同的模块:

import { Comp1, Comp5, Comp7 } from 'shared/common/components'; 

为了使这项工作,内部shared/common/components我创建的桶index.ts文件:

import { Comp1 } from '.comp1/comp1.comp'; 
import { Comp2 } from '.comp2/comp2.comp'; 
import { Comp3 } from '.comp3/comp3.comp'; 
.... 
import { CompN } from '.compN/compN.comp'; 

export { 
    Comp1, 
    Comp2, 
    Comp3, 
    ... 
    CompN 
} 

虽然这个编译罚款,WebStorm显示首次进口的错误说它不能解决所有这些符号。

我试图将src/main/js/publish标记为Resource Root,因为这是包含sharedapp的目录,但仍然不起作用。

如果我改变了进口它工作正常:

import { Comp1, Comp5, Comp7 } from 'shared/common/components/index.ts'; 

有没有什么办法让WebStorm承认这些index.ts文件,而无需在进口实际编写呢?

+0

其IDE版本您使用? – anstarovoyt

+0

@anstarovoyt Webstorm 11.0.4 – Danziger

+1

该问题应该在WS2016.1.3和WS2016.2中修复 – anstarovoyt

回答

0

正如@anstarovoyt在他的评论中指出的那样,问题在更新到WS2016.2后得到修复。

所以似乎只有两种选择要么更新WebStorm或写保持在进口扩展:

import { Comp1, Comp5, Comp7 } from 'shared/common/components/index.ts';