react-amap
react-amap copied to clipboard
DistrictLayer
请给一个DistrictLayer的例子 我再mapEvents 中加载Province this.mapEvents = { created(map) { _this.map = map;
_this.province && _this.province.setMap(null);
map.plugin('AMap.DistrictLayer', () => {
_this.province = new AMap.DistrictLayer.Province({
zIndex: 12,
adcode: 130000,
depth: 2,
styles: {
'fill': function(properties) {
// properties为可用于做样式映射的字段,包含
// NAME_CHN:中文名称
// adcode_pro
// adcode_cit
// adcode
var adcode = 130000;
return () => {
var colors = {}
if (!colors[adcode]) {
var gb = Math.random() * 155 + 50;
colors[adcode] = 'rgb(' + gb + ',' + gb + ',255)';
}
return colors[adcode];
};
},
'province-stroke': 'cornflowerblue',
'city-stroke': 'white', // 中国地级市边界
'county-stroke': 'rgba(255,255,255,0.5)', // 中国区县边界
},
});
console.log('_this.province', _this.province,_this.map.getContainer());
_this.province.setMap(_this.map);
});
},
但是使用.province.setMap方法并没有起作用
请问是我设置的方法有问题么,有没有什么方法可以设置区划图层
请问是我设置的方法有问题么,有没有什么方法可以设置区划图层
你好,我和你遇到了一样的问题,解决方案我已经发现了,解决方案是在Map组件上。
DistrictLayer这个对象需要单独引入,所以在key那里你要拼接一个 plugin,然后高德版本,我自己发现1.4.2不行,这个1.4.15可以,这样做完之后,就可以了。
<Map amapkey={${key}&plugin=AMap.DistrictLayer} version='1.4.15' />