我正在使用ArcGIS JSAPI 4.12,并希望使用空间错觉在地图上绘制军事符号。
当我向脚本添加milsymbol.js
时,控制台返回错误
未捕获的SyntaxError:无法在模块外部使用导入语句`
因此,我将type=“module”
添加到脚本中,然后它返回
未捕获的引用错误:未定义ms
这是我的密码:
<link rel="stylesheet" href="https://js.arcgis.com/4.12/esri/css/main.css">
<script src="https://js.arcgis.com/4.12/"></script>
<script type="module" src="milsymbol-2.0.0/src/milsymbol.js"></script>
<script>
require([
"esri/Map",
"esri/views/MapView",
"esri/layers/MapImageLayer",
"esri/layers/FeatureLayer"
], function (Map, MapView, MapImageLayer, FeatureLayer) {
var symbol = new ms.Symbol("SFG-UCI----D", { size: 30 }).asCanvas(3);
var map = new Map({
basemap: "topo-vector"
});
var view = new MapView({
container: "viewDiv",
map: map,
center: [121, 23],
zoom: 7
});
});
</script>
因此,无论我是否添加type=“module”
,都会出现错误。然而,在空间幻觉的官方文件中,脚本中没有任何type=“module”
。我现在真的很困惑。他们如何在不添加类型的情况下使其工作?
import { ms } from "./ms.js";
import Symbol from "./ms/symbol.js";
ms.Symbol = Symbol;
export { ms };
看起来错误的原因是:
>
您当前正在加载src
目录中的源文件,而不是dist
目录中的构建文件(您可以在这里看到预期的分布式文件)。这意味着您在未更改/未捆绑状态下使用本机源代码,导致以下错误:未捕获的同步错误:无法在模块
之外使用导入语句。这应该通过使用捆绑版本来解决,因为包正在使用汇总来创建捆绑包。
您得到Uncaught ReferenceError:ms未定义
错误的原因是模块的作用域是有限的,并且由于您使用本机模块加载库,ms
不在全局作用域中,因此无法在以下脚本标记中访问。
看起来您应该能够加载此文件的dist
版本,以便在窗口中定义
ms
。请从库作者处查看此示例,以了解如何实现这一点。
将“type”:“module”
添加到包.json
文件中。
{
// ...
"type": "module",
// ...
}
注意:当使用模块时,如果你得到ReiscceError:要求没有定义
,你需要使用导入
语法而不是要求
。你不能在它们之间自然地混合和匹配,所以如果你需要同时使用它们,你需要选择一个或者使用捆绑器。
我出现此错误是因为我忘记了脚本标记中的type=“module”
:
<script type="module" src="milsymbol-2.0.0/src/milsymbol.js"></script>
我正在尝试使用导入关键字。我的ASP中的jsx文件。NETMVC5项目。我希望能够将其他React组件导入到另一个React组件中,但是,在使用import关键字时,出现以下错误: 未捕获的SyntaxError:无法在模块外部使用导入语句 下面是我的代码: 我ndex.cshtml: 辅导的jsx: 议论jsx: 如果我没有导入,或者如果我直接在教程中添加注释类。jsx,运行良好,但这不是我想要
今天我决定尝试学习React,但每当我尝试导入以下两个模块时: 我得到一个错误: 未捕获的SyntaxError:无法在模块外部使用导入语句 以下是我尝试创建React程序所采取的步骤: 安装NodeJS 为什么我会出现这个错误,我该如何修复它?
试图将用户模型中的“uuid”作为
我有一本书。节点js(07.10.19版本的node.js的最新版本)应用程序中的ts文件,带有导入节点模块而无默认导出。我使用这种结构:
我有一个ApolloServer项目给我带来了麻烦,所以我想我可能会更新它,并在使用最新的巴别塔时遇到问题。我的“index.js”是: 当我运行它时,我得到了错误 首先,我试图做一些事情来说服TPTB*这是一个模块(没有成功)。所以我把“导入”改成了“要求”,这就奏效了。 但是现在我在其他文件中有大约24个“导入”给我同样的错误。 *我确信我的问题的根源是我甚至不确定是什么在抱怨这个问题。我有点
在测试其中一个功能时,我遇到了这种错误。到底是什么问题? /用户/user/websprojects/hsu/src/path finding/path finding。spec.js:1从'chai'导入{expect}^^^^^^ 语法错误:无法在WrapSafe(节点:内部/模块/cjs/加载器: 1018:16)的模块外使用导入语句。_compile(节点:内部/模块/cjs/加载器: 1