我正在尝试使用Blazor Javascript isolation的新功能。我正在按照示例ExampleJsInterop.cs导入我自己的JS文件。在我尝试从我的脚本中导入NPM模块之前,它一直起作用。在我的package.json中,我设置了对interactjs的依赖,并且在我的脚本中,我在顶部添加了import interact from 'interactjs';。
我收到一个Failed to resolve module specifier "interactjs"错误。我不知道该如何克服这一点。
在此之前,我使用Webpack将我的脚本和依赖项捆绑到一个文件中,该文件将作为标记添加到我的index.html中。这工作得很好,但我不确定如何继续使用带有JS隔离的NPM包。
谢谢!
发布于 2021-10-06 20:19:29
我忘了我把这个问题搁置了将近一年!
我最终使用Snowpack解决了这个问题,将NPM包捆绑到Blazor wwwroot文件夹中。归功于这篇文章,它为我指明了正确的方向:https://nbarraud.github.io/js-in-blazor.html
发布于 2021-10-06 17:29:46
有点晚了,但我刚刚解决了一个类似的问题。npm文件安装到隐藏的node_modules文件夹中。当你运行你的应用程序时,这对你的脚本是不可用的,除非你做了一些事情使它可用。但是,即使您将interactjs文件复制到您的脚本文件夹中,如果它是npm文件,它仍然不会工作。这些程序应该在nodejs中运行,而不是在浏览器中运行。所以你仍然需要使用你的捆绑器。我试过了,但在某些文件上遇到了一些问题,所以最终使用了snowpack。我刚读完一堆关于javascript interop - part 4 deals with npm的文章。
https://stackoverflow.com/questions/65367166
复制相似问题