【问题标题】:WebStorm not recognising index.ts files in importsWebStorm 无法识别导入中的 index.ts 文件
【发布时间】:2016-12-25 04:09:25
【问题描述】:

我有一个使用 Webpack 的项目设置。我有几个不同目录的别名:

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 标记为资源根,因为该目录包含sharedapp,但仍然不起作用。

如果我将导入更改为:

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

有没有什么方法可以让 WebStorm 识别那些 index.ts 文件而不实际将它们写入导入中?

【问题讨论】:

  • 你使用哪个 ide 版本?
  • @anstarovoyt Webstorm 11.0.4
  • 这个问题应该在WS2016.1.3和WS2016.2中修复
  • @anstarovoyt 是的。如果有任何其他解决方案会很好,但我会与其他更新它的人一起检查它并且它有效。如果您愿意,您可以创建一个答案(:

标签: intellij-idea typescript import webpack webstorm


【解决方案1】:

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

所以看来只有两个选项要么更新您的 WebStorm,要么继续在导入中编写扩展:

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

【讨论】:

    猜你喜欢
    • 2017-09-05
    • 2018-07-13
    • 2022-11-09
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-18
    • 2017-04-15
    相关资源
    最近更新 更多