use*_*794 6 typescript mapbox-gl-js deno
我正在尝试将 mapbox 与 deno 一起使用
其实我正在尝试这个:
import mapboxgl from 'https://dev.jspm.io/mapbox-gl';
mapboxgl.accessToken = "toto";
var map = new mapboxgl.Map({
container: 'map', // container id
style: 'mapbox://styles/mapbox/streets-v11', // style URL
center: [-74.5, 40], // starting position [lng, lat]
zoom: 9 // starting zoom
});
Run Code Online (Sandbox Code Playgroud)
使用 jspm 我有太多错误,当我尝试我有一个:
esModuleInterop, module, target
error: TS2339 [ERROR]: Property 'accessToken' does not exist on type '{}'.
mapboxgl.accessToken = "toto";
~~~~~~~~~~~
at file:///home/bussiere/Workspace/GreatParis/templateV2/source/deno/Mapbox/map.ts:10:10
TS2339 [ERROR]: Property 'Map' does not exist on type '{}'.
var map = new mapboxgl.Map({
~~~
at file:///home/bussiere/Workspace/GreatParis/templateV2/source/deno/Mapbox/map.ts:12:24
Run Code Online (Sandbox Code Playgroud)
我也试过:
import { mapboxgl } from "./../../libs/mapbox/2_1_1/mapbox-gl.js";
mapboxgl.accessToken = "toto";
var map = new mapboxgl.Map({
container: 'map', // container id
style: 'mapbox://styles/mapbox/streets-v11', // style URL
center: [-74.5, 40], // starting position [lng, lat]
zoom: 9 // starting zoom
});
Run Code Online (Sandbox Code Playgroud)
但我有一个:
Unsupported compiler options in "templateV2/source/deno/Mapbox/tsconfig.json".
The following options were ignored:
esModuleInterop, module, target
Bundle file:///home/bussiere/Workspace/GreatParis/templateV2/source/deno/Mapbox/map.ts
Emit "../compiled/map.js" (1.45MB)
error: Uncaught (in promise) RuntimeError: unreachable
at <anonymous> (wasm://wasm/00247702:1:336403)
at <anonymous> (wasm://wasm/00247702:1:341096)
at <anonymous> (wasm://wasm/00247702:1:339419)
at <anonymous> (wasm://wasm/00247702:1:339781)
at <anonymous> (wasm://wasm/00247702:1:336272)
at <anonymous> (wasm://wasm/00247702:1:268321)
at minify (wasm://wasm/00247702:1:253183)
at minify (https://deno.land/x/minifier@v1.1.1/wasm.js:98:14)
at minify (https://deno.land/x/minifier@v1.1.1/mod.ts:27:10)
at https://deno.land/x/minifier@v1.1.1/cli.ts:53:3
Run Code Online (Sandbox Code Playgroud)
这是我的 tsconfig.json :
{
"compilerOptions": {
/* Basic Options */
"target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
"module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
"lib": ["dom","es2015","DOM"], /* Specify library files to be included in the compilation. */
/* Strict Type-Checking Options */
"strict": true, /* Enable all strict type-checking options. */
"strictNullChecks": false, /* Enable strict null checks. */
"esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
}
}
Run Code Online (Sandbox Code Playgroud)
有没有人设法将 mapbox-gl 与 deno 一起使用?
问候
小智 2
在其 package.json 中将mapbox-gl-js
自己描述为“一个 WebGL 交互式地图库”。它预计在浏览器中运行,可以访问 DOM 和 WebGL(一种有效渲染图形的技术)。
我想用 Deno 运行它可能有两个原因:
将地图可视化添加到已使用 Deno 的 Web 应用程序。在这种情况下,这很容易。您不希望 Deno 运行 mapbox-gl。您真正想要的是 Deno 使用一些静态 javascript 提供网页服务,这些静态 javascript 将在浏览器(而不是服务器)中执行并运行mapbox-gl
. 为此,请配置 Deno 以在本示例中提供 HTML: https: //docs.mapbox.com/mapbox-gl-js/example/simple-map/
以编程方式生成地图的光栅图像(PNG,...)。例如,您可能希望根据纬度和经度自动保存城市地图,并使用 mapbox-gl 提供的所有样式和选项。这通常称为“静态地图 API”。您不一定需要自己运行它,这里是 Mapbox关于此 API 的文档(50,000 免费/月)。如果您确实想自己运行它,请参见下文。
mapbox-gl
在服务器上运行如果不使用mapbox-gl-js
浏览器,则需要模拟 DOM 和 WebGL。但实际上有一种更简单的方法生成静态mapx mapbox-gl-native
:。它期望在服务器上提供更容易(并且性能更高?)的渲染库。
实现这一目标的一个项目是tileserver-gl。它的源代码非常小,您可以从中获得指导。使用问题的一部分mapbox-gl-native
是安装和配置其依赖项。从tileserver-gl依赖项中了解它 。
您可以tileserver-gl
在 Deno 中进行复制,如果许可证合适,甚至可以重用它的一些源文件。但你可能不需要!根据您想要完成的任务,您可以tileserver-gl
从 Docker 开始,然后使用 Deno 从其API 端点请求静态地图图像。
归档时间: |
|
查看次数: |
88 次 |
最近记录: |