@antv/larkmap 地图组件不支持英文化解决方法
1、通过配置生成地图(不支持英文化)
// 普通写法 在larkmap标签中可以加入各种插件 例如CustomControl控件
import type { LarkMapProps } from '@antv/larkmap';
import { LarkMap } from '@antv/larkmap';
import React from 'react';
const config: LarkMapProps = {
mapType: 'Gaode',
mapOptions: {
style: 'light',
center: [120.210792, 30.246026],
zoom: 9,
// token: '你申请的 Key',
},
};
export default () => (
<LarkMap {...config} style={{ height: '300px' }}>
<h2 style={{ position: 'absolute', left: '10px' }}>LarkMap</h2>
<CustomControl position="topleft">
<MapLegend />
</CustomControl>
</LarkMap>
);
// 由于普通写法兼容的是高德地图2.0版本,导致不可设置语言类型为英文,所以需要更改为通过实例生成地图
2、通过实例生成地图(通过切换版本为1.4.15开启英文化配置)
// 在配置项中 使用原生写法添加插件及各种图层 写法较为繁琐
import AMapLoader from '@amap/amap-jsapi-loader';
import { GaodeMap } from '@antv/l7';
import { LarkMap } from '@antv/larkmap';
import React from 'react';
/**
* 实例化
*/
// const mapInstance = new GaodeMap({
// style: 'dark',
// center: [120.210792, 30.246026],
// zoom: 10,
// // token: '你申请的 Key',
// });
/**
* 或者通过 AMapLoader
*/
const getMapInstance = () => {
return AMapLoader.load({
key: "d9aa6f3c8528eb02fc7330ce8baf5317", // 申请好的 Web 端开发者 Key,首次调用 load 时必填
version: "1.4.15", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
plugins: ["AMap.Scale", "AMap.ToolBar"], // 需要使用的的插件列表,如比例尺'AMap.Scale'等
}).then((AMap) => {
// 实例id
let map = new AMap.Map('container', {
lang: "en",
});
map.plugin(["AMap.ToolBar"], function () {
var tool = new AMap.ToolBar({
ruler: false,
position: "RT",
direction: false,
locate: false
});
map.addControl(tool);
});
return new GaodeMap({
mapInstance: map,
});
});
};
export default () => {
return <LarkMap id="container" map={getMapInstance} style={{ height: '300px' }} />;
};