javascript - VS Code 显示模块未找到,即使 WebPack 构建有效

标签 javascript typescript webpack visual-studio-code

我的 VS Code 说即使我的 WebPack 构建仍然有效,它也找不到导入。
这里是进口...

import * as tf from '@tensorflow/tfjs';
以及来自 VS Code 的消息:

Cannot find module '@tensorflow/tfjs'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option?


我已经阅读了一些关于路径别名的信息,可以在 tsconfig.json 中设置。缩短通往模块的长路径。但是如果这是一个路径别名并且我没有在我的 tsconfig.json 中配置它,WebPack如何知道模块所在的位置?
我还读到路径别名的约定是以“@”开头,但“node_modules”中的文件夹本身称为“@tensorflow”,所以我不知道它是否真的是路径别名,如果不是,也许 WebPack 神奇地知道它必须在“node_modules”中搜索这个模块?
如您所见,我对此感到非常困惑,如果有人可以为我解决这个问题并解释我必须做些什么来阻止 VS Code 提示导入,我会非常高兴。

最佳答案

我自己找到了解决方案。
我只在“路径”选项中找到了关于在 tsconfig.json 中明确定义别名的东西,但这不能解决我的问题,因为在我的其他 Angular 项目中,即使我正在使用,也没有定义类似的东西@Angular 在没有这个问题的情况下在那里导入了很多东西。
但后来我在我的 Angular 项目中发现了这个 "moduleResolution": "node" .
如其他 typescript 文档中所述:

However, resolution for a non-relative module name is performed differently. Node will look for your modules in special folders named node_modules.


瞧,它起作用了。是的,我可能早点尝试过这个,因为它写在我的问题中来自 VS Code 的消息中,但我虽然这只是针对 node.js 特定项目的东西,我没有在任何地方读到这个。

关于javascript - VS Code 显示模块未找到,即使 WebPack 构建有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64528237/

相关文章:

javascript - 如何实例化并获取多维数组/矩阵的长度?

javascript - 在 Ionic3 中订阅提供程序后,Console.log 显示为未定义

javascript - 不能将 openlayers-3 与 webpack 一起使用

javascript - Angular 2 : Passing Data to Routes?

javascript - 此刻如何捕捉旋转的 ladda 按钮?

javascript - 使用灯箱搜索弹出框

javascript - 从另一个模块注入(inject)nestjs服务

javascript - Jquery - 每个相同类 li 值的总和

Webpack 和 CommonsChunkPlugin,为每个异步 block 分离出 node_modules

css - Webpack - 如何确定 CSS 文件的输出样式?