带有NPM依赖项的Blazor Javascript隔离



我正在尝试使用新的Blazor Javascript隔离功能。我正在按照示例ExampleJsInterop.cs导入我自己的JS文件。在我尝试从脚本中导入NPM模块之前,它一直有效。在我的package.json中,我设置了对interactjs的依赖,在我的脚本中,我在顶部添加了import interact from 'interactjs';

我收到一个Failed to resolve module specifier "interactjs"错误。我不知道该怎么克服。

以前我使用Webpack将我的脚本和依赖项捆绑到一个单独的文件中,该文件作为标记添加到我的index.html中。这很好,但我不知道如何继续使用带有JS隔离的NPM包。

谢谢!

有点晚了,但我刚刚解决了一个类似的问题。npm文件将安装到隐藏的node_modules文件夹中。当您运行应用程序时,这对您的脚本不可用,除非您采取措施使其可用。然而,即使将interactjs文件复制到脚本文件夹中,如果它是npm文件,它仍然无法工作。它们是在nodejs中运行的,而不是在浏览器中运行。所以你仍然需要使用bundler。我尝试了webpack,但在某些文件上遇到了一些问题,所以最终选择了snowpack。我刚刚完成了一堆关于javascript互操作的文章——第4部分涉及npm

我忘了我把这个问题留了将近一年!

我最终使用Snowpack将NPM包捆绑到Blazor wwwroot文件夹中解决了这个问题。这篇文章为我指明了正确的方向,值得称赞:https://nbarraud.github.io/js-in-blazor.html

最新更新