访问与导入类型同名的ES6类型

时间:2017-06-19 22:28:07

标签: javascript typescript types ecmascript-6

我有一个Typescript类,我在其中导入了一些Map模块:

import { Map, MapboxOptions, MapDataEvent, MapMouseEvent } from "mapbox-gl";

在代码的后期我有一个使用ES6的 Map 对象的函数。它给了我一个编译错误:

type Map is not generic

这是因为它试图使用Mapbox Map而不是ES6 Map。

我知道我可以重命名Mapbox的Map名称,所以我每个类只有一个Map名称,但我想知道:在不重命名Mapbox的情况下访问ES6 Map类型是否可行?

1 个答案:

答案 0 :(得分:3)

  

在不重命名Mapbox的情况下访问ES6 Map类型是否可行?

不推荐。如果要使用同名的全局变量,请重命名局部变量(在您的情况下为导入)。

哈克

再次使用global.Map,不推荐。更简单的解决方案是重命名导入。