尝试将 cesium 与 Angular CLI (v7) 结合使用时出现构建错误

Build error when attempting to use cesium with Angular CLI (v7)

我刚刚开始使用 angular-cesium 并正在按照他们的 getting started 指南使用 angular CLI 进行设置。在尝试为我的应用程序提供服务时,我遇到了以下错误:

ERROR in ./node_modules/cesium/index.js 9:4
Module parse failed: 'return' outside of function (9:4)
You may need an appropriate loader to handle this file type.
| if (process.env.NODE_ENV === 'production') {
|     module.exports = require(path.join(__dirname, 'Build/Cesium/Cesium'));
>     return;
| }
|

铯的 index.js 文件的内容是:

'use strict';

var path = require('path');

// If in 'production' mode, use the combined/minified/optimized version of Cesium
if (process.env.NODE_ENV === 'production') {
    module.exports = require(path.join(__dirname, 'Build/Cesium/Cesium'));
    return;
}

// Otherwise, use un-optimized requirejs modules for improved error checking. For example 'development' mode
var requirejs = require('requirejs');
requirejs.config({
    paths: {
        'Cesium': path.join(__dirname, 'Source')
    },
    nodeRequire: require
});

module.exports = requirejs('Cesium/Cesium');

根据我遇到的错误,我看不到函数外部哪里有 return

这里发生了什么可以解释此错误背后的原因?

我这里有示例回购,可以在其中复制此错误 -> https://github.com/parky128/cesium-playground

谢谢

在您的 tsconfig.json 路径部分添加一行:

"cesium": ["node_modules/cesium/Build/Cesium/Cesium.js"]

这将告诉它查看 'correct' cesium 文件,而不是预期 运行 来自节点的文件(根据我的理解)

注意:如果您愿意,也可以指向 Build/CesiumUnminified