直接为Mapbox设置accessToken时抛出Imports are immutable错误怎么办?
解决直接修改mapboxgl.accessToken报错的问题
直接给mapboxgl.accessToken赋值时会触发报错,错误提示如下:
JavaScript中导入的内容是不可变的。要修改该导入值,你必须在导入文件中导出一个设置函数(例如"setAccessToken"),然后在此处导入并调用该函数。
问题代码示例:
import * as mapboxgl from 'mapbox-gl'; mapboxgl.accessToken = 'YOUR_TOKEN';
解决方案
改用Mapbox GL官方提供的setAccessToken方法来配置令牌,代码如下:
import * as mapboxgl from 'mapbox-gl'; mapboxgl.setAccessToken('YOUR_TOKEN');
原因说明
ES模块规范中,导入的模块对象是只读的,无法直接修改其属性值。Mapbox GL针对这种情况提供了专门的setAccessToken设置函数,通过调用该函数就能合法完成令牌配置,避免触发不可变导入的报错。
内容的提问来源于stack exchange,提问作者Sudharshan
相关产品推荐
相关产品推荐

