Javascript 在html中使用npm包(传单插件)的问题<;脚本>;标签

Javascript 在html中使用npm包(传单插件)的问题<;脚本>;标签,javascript,html,node.js,leaflet,Javascript,Html,Node.js,Leaflet,我试图在我的本地托管网站中包含一个传单包。该网站的想法是允许用户从Twitter API查询推文(请求从HTML页面发送到express上运行的NodeJs服务器),并使用边界框将其发送回并加载到传单地图中,以放置标记。由于大多数tweet没有地理标签或边界框信息,我认为下一个最好的办法是获取tweet元数据中存储的位置(如伦敦)的名称,并进行反向地理编码,以从城市/位置名称获取边界框。要进行反向地理编码,我想我应该使用一个名为的传单插件,因为使用谷歌地图API的另一个常见选项似乎不是免费的。我

我试图在我的本地托管网站中包含一个传单包。该网站的想法是允许用户从Twitter API查询推文(请求从HTML页面发送到express上运行的NodeJs服务器),并使用边界框将其发送回并加载到传单地图中,以放置标记。由于大多数tweet没有地理标签或边界框信息,我认为下一个最好的办法是获取tweet元数据中存储的位置(如伦敦)的名称,并进行反向地理编码,以从城市/位置名称获取边界框。要进行反向地理编码,我想我应该使用一个名为的传单插件,因为使用谷歌地图API的另一个常见选项似乎不是免费的。我现在尝试了很多方法将这个包导入到我的项目中,但都没有成功。文档显示,可以使用

// import
import { OpenStreetMapProvider } from 'leaflet-geosearch';

// setup
const provider = new OpenStreetMapProvider();

// search
const results = await provider.search({ query: input.value });
因此,我尝试以这种方式将其加载到标记内的HTML代码中,如下所示:


从“传单地理搜索”导入{OpenStreetMapProvider};
//设置
const provider=新的OpenStreetMapProvider();

如果要在index.html页面中使用它,请使用直接导入库。将
node\u模块
导入html是一件痛苦的事情,这不是一种常见的做法,而且是因为您公开了服务器的结构。是的,我忘了提到我也尝试过使用CDN,但是,当我尝试这样导入时:
我得到以下错误
加载模块脚本失败:服务器使用非JavaScript MIME类型“text/html”进行响应。根据HTML规范,对模块脚本执行严格的MIME类型检查。
。我试着在packahe.json中添加“type”:“module”,但这并没有起到任何作用。事实上,尽管这个错误来自于我忘记删除的另一个导入尝试。看起来它现在正在工作。我不知道上次我试的时候为什么不起作用,不过还是谢谢你:)