Javascript multipe require函数(RequireJS和ArcGIS JS API)存在问题
我目前正在寻找一种在项目中使用模块加载器和的方法。根据文档,可以加载ArcGIS JS API的模块,如以下代码段所示:Javascript multipe require函数(RequireJS和ArcGIS JS API)存在问题,javascript,requirejs,arcgis,arcgis-js-api,Javascript,Requirejs,Arcgis,Arcgis Js Api,我目前正在寻找一种在项目中使用模块加载器和的方法。根据文档,可以加载ArcGIS JS API的模块,如以下代码段所示: require(["esri/config", "esri/Map", "esri/views/MapView"], function ( esriConfig, Map, MapView ) { //... }); 问题是,如果我想从ArcGIS JS API加载模块,它实际上调用了Require
require(["esri/config", "esri/Map", "esri/views/MapView"], function (
esriConfig,
Map,
MapView
) {
//...
});
问题是,如果我想从ArcGIS JS API加载模块,它实际上调用了RequireJS的Require函数:
但它应该加载ArcGIS JS API中定义的require函数:
RequireJS找不到ArcGIS JS API的模块,因此在控制台中抛出错误:
我的项目只支持ES5。由于这个原因,我不能使用像这样的节点库。我找到了解决方案。我必须添加以下代码:
require.config({
paths: {
esri: "https://js.arcgis.com/4.18/esri",
dojo: "https://js.arcgis.com/4.18/dojo",
dojox: "https://js.arcgis.com/4.18/dojox",
dijit: "https://js.arcgis.com/4.18/dijit",
"@dojo": "https://js.arcgis.com/4.18/@dojo",
cldrjs: "https://js.arcgis.com/4.18/cldrjs/dist/cldr",
globalize:
"https://js.arcgis.com/4.18/cldrjs/dist/globalize/dist/globalize",
maquette: "https://js.arcgis.com/4.18/maquette/dist/maquette.umd",
"maquette-css-transitions":
"https://js.arcgis.com/4.18/maquette-css-transitions/dist/maquette-css-transitions.umd",
"maquette-jsx":
"https://js.arcgis.com/4.18/maquette-jsx/dist/maquette-jsx.umd",
moment: "https://js.arcgis.com/4.18/moment",
tslib: "https://js.arcgis.com/4.18/tslib/tslib",
},
});
我在以下项目中找到了此解决方案: