我想使用typescript在react中重现this highmaps示例。但是,纬度/经度点没有显示,这似乎与proj 4包有关,因为它在此javascript demo中工作。我已经在live demo中尝试过了。如果我按如下方式加载包,它不会被使用,但我不知道应该在哪里调用它:
import * as proj4 from "proj4";
提前感谢!
2guxujil1#
Highcharts需要proj4库在window上可用,这样你就可以创建自己的文件,将该包导出为一个模块,该文件将包含以下代码:
proj4
window
import proj4 from 'proj4'; if (typeof window !== 'undefined') { window.proj4 = window.proj4 || proj4; } export default proj4;
将其保存到另一个文件中,例如“proj4-module.js”,然后按如下方式导入:
import './proj4-module'
实时示例:https://codesandbox.io/s/m4o2q0pzzy
yhived7q2#
您可以使用proj4属性https://api.highcharts.com/highmaps/chart.proj4示例:
import proj4 from "proj4"; import highcharts from "highcharts"; import mapInit from "highcharts/modules/map"; mapInit(highcharts); const chartOptions: highcharts.Options = { chart: { type: "map", map: "mexico", proj4: proj4, } };
xiozqbni3#
将 * 作为proj 4_从'proj 4'导入; const proj 4 =项目4_.默认值;
wfveoks04#
不管是好是坏,看起来Highmaps期望proj4在全局对象上定义。
(window as any).proj4 = proj4;
4条答案
按热度按时间2guxujil1#
Highcharts需要
proj4
库在window
上可用,这样你就可以创建自己的文件,将该包导出为一个模块,该文件将包含以下代码:将其保存到另一个文件中,例如“proj4-module.js”,然后按如下方式导入:
实时示例:https://codesandbox.io/s/m4o2q0pzzy
yhived7q2#
您可以使用proj4属性https://api.highcharts.com/highmaps/chart.proj4
示例:
xiozqbni3#
将 * 作为proj 4_从'proj 4'导入; const proj 4 =项目4_.默认值;
wfveoks04#
不管是好是坏,看起来Highmaps期望proj4在全局对象上定义。