尝试使用未加载的地图:world_mill

时间:2019-01-15 16:37:37

标签: jquery reactjs jvectormap

我正在使用Reactjs用jvectormap-next显示地图。我必须使用jquery,因为我猜React-jvectormap不再得到支持。这是我的代码:

import React from "react";
import $ from "jquery";
window.jQuery = $;
require("jvectormap-next")($);

export default class App extends React.Component {
  getMap() {
    var gdpData = {
      AF: 16.63,
      AL: 11.58,
      DZ: 158.97
      // ...
    };

    $("#world-map-gdp").vectorMap({
      map: "world_mill",
      series: {
        regions: [
          {
            values: gdpData,
            scale: ["#C8EEFF", "#0071A4"],
            normalizeFunction: "polynomial"
          }
        ]
      },
      onRegionTipShow: function(e, el, code) {
        el.html(el.html() + " (GDP - " + gdpData[code] + ")");
      }
    });
  }
  render() {
    return (
      <div className="App">
        {this.getMap()}
      </div>
    );
  }
}

我遇到的错误是Attempt to use map which was not loaded: world_mill,有人可以帮忙吗?我还需要导入或添加到HTML文件中吗?

2 个答案:

答案 0 :(得分:0)

您需要将地图文件(可从jvectormaps站点下载)包括在索引页面的正文或头部分中,即:

<script src="/assets/jquery-jvectormap-2.0.3/jquery-jvectormap-2.0.3.min.js"></script>  
<script src="/assets/jquery-jvectormap-2.0.3/jquery-jvectormap-world-mill.js"></script>

答案 1 :(得分:0)

我收到此错误是因为

<script src="/assets/jquery-jvectormap-2.0.3/jquery-jvectormap-2.0.3.min.js"></script>

需要在之前

<script src="../Srcs/plugins/jvectormap/jquery-jvectormap-world-mill-en.js"></script>

Leon的答案是正确的,这只是强调要进行另一项检查,以确保人们不会陷入与我相同的陷阱。