使用TypeScript使用铯吗?

问题描述 投票:0回答:1

我无法使用TypeScript运行Cesium,由于出现“铯”无法以一种或另一种错误形式出现的错误,它经常失败。

我有这个项目树:

enter image description here

在tsconfig.json中:

{
  "compilerOptions": {
    "noImplicitAny": false,
    "noEmitOnError": true,
    "removeComments": false,
    "sourceMap": true,
    "target": "ES6",
    "allowJs": true,
    "noEmit": true,
    "types": [],
    "strict": true
  },
  "exclude": [
    "node_modules",

    "Build"
  ],
  "include": [

    "Build/CesiumUnminified/Cesium.js"
  ]
}

在index.html中:

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <title>CesiumTest</title>
    <base href="/" />
    <link href="css/bootstrap/bootstrap.min.css" rel="stylesheet" />
    <link href="css/app.css" rel="stylesheet" />
    <link href="manifest.json" rel="manifest" />
    <link href="css/syncfusion-blazor-icons.css" rel="stylesheet" />
    <link href="Build//Cesium/Widgets/widgets.css" rel="stylesheet" />
    <link rel="stylesheet" href="_content/Syncfusion.Blazor/styles/bootstrap4.css" />

</head>

<body>
    <app>Loading...</app>

    <div id="blazor-error-ui">
        An unhandled error has occurred.
        <a href="" class="reload">Reload</a>
        <a class="dismiss">🗙</a>
    </div>
    <script src="_framework/blazor.webassembly.js"></script>
    <script>navigator.serviceWorker.register( 'service-worker.js' );</script>
    <script src="Source/Cesium.js"></script>

    <script src="Main.js" ></script>
</body>

</html>

在Main.ts中:

import * as Cesium from "cesium";


let map: Cesium.Viewer = undefined;

function createTheMap()
{
    if (map === undefined) {

        map = new Cesium.Viewer("mapViewDiv",
            {
                timeline: false,
                animation: false,
                infoBox: false,
                navigationHelpButton: false,
                fullscreenButton: false,
                geocoder: false,
                shadows: false



            });

        console.log( map );

    }
    map.zoomTo(map.entities);
};
  • 如何使用TypeScript运行Cesium?

PS。该项目完全是客户端-因此未使用Node.js。

typescript cesium
1个回答
0
投票

通常,您需要将@typings for cesium添加到项目中。但是,如果您在本地安装它,则可以选择

  • 从目录àlaimport * as Cesium from "../Build/Cesium/Cesium.js";导入(但由于它在您的rootDir之外,因此将失败)
  • 将其添加到paths in your tsconfig inside the compilerOptions;

    compilerOptions:{ ... “路径”:{ “铯”:[“ ../ Build / Cesium / cesium.js”] }}

© www.soinside.com 2019 - 2024. All rights reserved.