导入节点模块时出现流错误“无法解析模块”

Posted

技术标签:

【中文标题】导入节点模块时出现流错误“无法解析模块”【英文标题】:Flow erroring "cant resolve module" when importing node modules 【发布时间】:2018-04-04 23:56:11 【问题描述】:

我最近将此添加到我的流配置中,因为与流拾取的节点模块相关的大量错误

[ignore]
.*/node_modules/.*

这解决了这些错误,但引入了新错误。现在,我导入的每个模块都会导致错误,流程说它无法解决它,因此让我认为这是由于我添加的忽略规则造成的。

有没有办法解决这个问题,因为这里删除这一行只会引入不同类型的错误,保留它仍然会出错。

【问题讨论】:

我也有同样的问题 应该不会出现这种错误,是不是这些依赖实际上不在node_modules中? 【参考方案1】:

现在有点晚了,但对于将来遇到这个问题的人来说:你不应该忽略你的 node_modules 文件夹。 Flow 应该从该文件夹中读取并分析其中的文件。

【讨论】:

@Michael,我也是,我花了半天时间试图找出问题所在:) @JamesKraus 那么如何消除这个问题中给出的错误。 @Raj,您需要发布一个更具体的问题。发生这种情况的原因有很多。 @JamesKraus 感谢您的回复:这是我发布的相同问题:***.com/questions/52164591/… 今天学到了一些新的有用的东西。谢谢@JamesKraus【参考方案2】:

实际上这是因为模块没有类型定义。所以我们可以只使用流类型来创建任何定义。

    运行yarn global add flow-typed 以全局安装流类型。

    进入项目文件夹:flow-typed install

    关闭终端并再次尝试运行npm run flow。就是这样。

参考:https://github.com/facebook/flow/issues/5935

【讨论】:

以上是关于导入节点模块时出现流错误“无法解析模块”的主要内容,如果未能解决你的问题,请参考以下文章

无法解析模块 ./zlib_bindings

无法开始业力测试 - 无法解析模块 [sqlite3] 等

无法解析模块 - Material-UI

无法解析模块“反应”的路径。 (导入/未解决)

webpack中的eslint导入:无法解析模块的路径

使用带有打字稿的 eslint - 无法解析模块的路径