找不到模块'mapbox-gl / dist / mapbox-gl.js'

时间:2016-12-08 13:47:14

标签: typescript mapbox-gl-js

尝试将mapboxgl导入我的TypeScript文件时出错。

我在mapbox-gl-js的README中完成了它:

import mapboxgl from 'mapbox-gl/dist/mapbox-gl.js';

然后当我运行typescript编译器时:

tsc

我收到此错误:

error TS2307: Cannot find module 'mapbox-gl/dist/mapbox-gl.js'.

但出于某种原因,一切仍然被编译并且工作正常。所以我很困惑这实际意味着什么?

我在Github上为此创建了一个问题:https://github.com/mapbox/mapbox-gl-js/issues/3767

4 个答案:

答案 0 :(得分:1)

我可以通过使用此导入来解决此问题:

import * as mapboxgl from 'mapbox-gl';

但并非所有问题都由此解决。我正在使用Rollup进行捆绑,现在这已经导致错误:

Illegal reassignment to import 'mapboxgl'
Error: Illegal reassignment to import 'mapboxgl'
at error (C:\Users\m.wilson\AppData\Roaming\npm\node_modules\rollup\src\utils\error.js:2:14)
at disallowIllegalReassignment (C:\Users\m.wilson\AppData\Roaming\npm\node_modules\rollup\src\ast\nodes\shared\disallowIllegalReassignment.js:9:4)

答案 1 :(得分:0)

error TS2307: Cannot find module 'mapbox-gl/dist/mapbox-gl.js'

mapbox-gl/dist/mapbox-gl.js文件是一个未检入git的构建文件。它包含在npm包中。如果您缺少此文件,可以通过在npm install && npm run build-min文件夹中运行mapbox-gl来生成该文件。

答案 2 :(得分:0)

是的,你的权利。 声明(就像大多数外部js库一样): 从您的文件夹的根目录(您可能必须使用sudo进行npm安装)。

git diff master^^ myfile.txt

PS:我也正在研究这个问题。我可以服务和构建,但在Android模拟我得到一个黑屏。 你能说得对你好吗

答案 3 :(得分:0)

这可能是对所有神圣事物的反对,但我确实通过这样的导入让事情发挥作用......

const mapboxgl = require('../../../node_modules/mapbox-gl/dist/mapbox-gl.js'); const Map = mapboxgl.Map