react-amap icon indicating copy to clipboard operation
react-amap copied to clipboard

DistrictLayer

Open qw5220761 opened this issue 5 years ago • 2 comments

请给一个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方法并没有起作用

qw5220761 avatar May 11 '20 01:05 qw5220761

请问是我设置的方法有问题么,有没有什么方法可以设置区划图层

qw5220761 avatar May 11 '20 01:05 qw5220761

请问是我设置的方法有问题么,有没有什么方法可以设置区划图层

你好,我和你遇到了一样的问题,解决方案我已经发现了,解决方案是在Map组件上。 DistrictLayer这个对象需要单独引入,所以在key那里你要拼接一个 plugin,然后高德版本,我自己发现1.4.2不行,这个1.4.15可以,这样做完之后,就可以了。 <Map amapkey={${key}&plugin=AMap.DistrictLayer} version='1.4.15' />

dbb1016606796 avatar Jun 22 '20 07:06 dbb1016606796