在ASP.NET中使用npm导入js模块时遇到的问题
背景: 我正在Visual Studio中的Microsoft ASP.NET项目上运行OpenLayers 6。我遵循OpenLayers 6地图导出示例,使用html to image js库将我的地图导出为png。在本例中,库由节点的包管理器(npm)安装和管理,并使用Javascript导入语句访问函数。因为我没有在Node中工作,所以我必须让npm在我的ASP.NET项目中工作,所以我安装了Mads Kristensen的Web扩展包、Node和npm。使用npm,我下载并安装了html-to-image库,该库创建了一个nodes\u-modules文件夹,并将该库放在其中。该库包含许多typescript和js文件(如下所示) 问题: 我似乎无法像OpenLayers示例所示那样使用javascript导入语句访问库的函数。他们的示例显示,您可以通过以下方式从模块导入toPng函数:在ASP.NET中使用npm导入js模块时遇到的问题,asp.net,node.js,npm,es6-modules,openlayers-6,Asp.net,Node.js,Npm,Es6 Modules,Openlayers 6,背景: 我正在Visual Studio中的Microsoft ASP.NET项目上运行OpenLayers 6。我遵循OpenLayers 6地图导出示例,使用html to image js库将我的地图导出为png。在本例中,库由节点的包管理器(npm)安装和管理,并使用Javascript导入语句访问函数。因为我没有在Node中工作,所以我必须让npm在我的ASP.NET项目中工作,所以我安装了Mads Kristensen的Web扩展包、Node和npm。使用npm,我下载并安装了htm
import {toPng} from 'html-to-image';
当我尝试以这种方式导入模块时,会出现加载资源404失败的错误。接下来,我尝试使用相对路径导入:import{toPng}从“../../node_modules/html到image”代码>并且我得到一个加载资源403失败(禁止)错误。然而,我能够从“../../lib/utils.js”访问toPng函数所在的invidualJS文件import{toPng}代码>但是我得到一个错误,说请求的模块没有提供名为“toPng”的导出。我敢肯定,这个库中的js文件不应该以这种方式单独访问
我的主要问题是:如何按照Openlayers示例所示的方式将整个html导入图像模块?在我的.NET项目中,似乎无法通过引用节点上的模块文件夹来使用导入语句。我可以找到从单个.js文件导入的所有ES6 js模块导入示例,因此我想知道如何使用多个js文件访问模块
是否可以专门编写此库,以便仅使用节点项目访问?Node.js和.NET项目之间访问ES6 js模块的方式是否有差异
任何对此的见解都将不胜感激 您还可能遇到html到图像的浏览器兼容性问题。这个例子即将更新,谢谢,这是一个很好的考虑点。我还注意到OL6改变了画布的工作方式,这将是另一个需要解决的问题。您可能还会遇到html到图像的浏览器兼容性问题。这个例子即将更新,谢谢,这是一个很好的考虑点。我还注意到OL6改变了画布的工作方式,这将是另一个需要解决的问题。