首页 / 浏览问题 / WebGIS / 问题详情
使用Vue - MapboxGL时,map显示没有定义
3EXP 2022年05月22日

iClient 11i  操作系统:win10

问题前提:使用了Vue - MapboxGL组件来进行桌面开发,已经成功在iPortal中创建了地图,并添加了数据,而且已经成功通过Vue在在网页端加载出来。

问题所在步骤:想实现组件实例中的基础组件功能,即存在一个card,点击图层上的点,会在card中关联该点的不同数据。

具体问题:前端控制台报错,即下述中的 map 没有定义

  methods: {
    load(obj) {
      var vm = this;
      map = obj.map;
      map.on("click", function (e) {
        var bbox = [
          [e.point.x - 2, e.point.y - 2],
          [e.point.x + 2, e.point.y + 2],
        ];
        var features = map.queryRenderedFeatures(bbox);
        if (features.length > 0) {
          var properties = features[0].properties;
          vm.name = properties["name"];
          vm.adress = properties["adress"]
          vm.kind_user = properties["kind_user"] || 0;
          vm.hard_suer = properties["hard_suer"] || 0;
          vm.data = properties["data"]
        }
      });
    },
  },

而在 sm-web-map 中已经有以下定义

server-url="http://localhost:8190/iportal"
      map-id="972466724"
      ref="map"
      style="position: absolute"
      @load.once='load'

1个回答

您好,这边建议您检查一下sm-web-map中的地址是否正确,如果是正确的话查看下地图是否能访问,您也可以使用其他地图服务的地址来确认是否为地图服务地址不正确的原因而导致了上述的问题
3,690EXP 2022年05月23日
...