Leaflet 以JSON作为文本的单张弹出窗口
出于调试目的,我希望我的标记有一个包含json的弹出窗口 该值类似于:Leaflet 以JSON作为文本的单张弹出窗口,leaflet,Leaflet,出于调试目的,我希望我的标记有一个包含json的弹出窗口 该值类似于: var CarState= { "height" : 6.2, "width" : 7.3, "length" : 9.1, "color" : { "r" : 255, "g" : 200, "b" : 10 } } 但这不起作用,我得到的只是一个截断的弹出窗口。CarState的内容在不断变化,但同样的属性包也存在 注:self是指
var CarState= {
"height" : 6.2,
"width" : 7.3,
"length" : 9.1,
"color" : {
"r" : 255,
"g" : 200,
"b" : 10
}
}
但这不起作用,我得到的只是一个截断的弹出窗口。CarState的内容在不断变化,但同样的属性包也存在
注:self是指该代码所在的AMD模块。我不用这个,因为你会有麻烦的。self.pop是一个保存L.pop的变量
this.update = function () {
var text = "<p>" + JSON.stringify(CarState) + "</p>";
self.pop.setContent(text);
self.pop.update();
}
this.update=函数(){
var text=“”+JSON.stringify(CarState)+“”;
self.pop.setContent(文本);
self.pop.update();
}
下面是它的外观:
下面是Chrome显示的弹出div大小:
好的,这对我来说很有用。不完全确定问题出在哪里
this.update = function () {
var text = "<pre><code>" + JSON.stringify(CarState, null, '\t') + "</code></pre>";
theCar.setPopupContent(text);
theCar.update();
theCar.setLatLng(L.latLng(CarState.lat, CarState.lon));
theMap.panTo(L.latLng(CarState.lat, CarState.lon));
}
";
车辆设置PopupContent(文本);
theCar.update();
theCar.setLatLng(L.latLng(CarState.lat,CarState.lon));
地图panTo(L.latLng(CarState.lat,CarState.lon));
}
请您澄清一下您的
self
和pop
变量是什么?请注意,您可以使用marker方法直接更新弹出窗口的内容。我认为弹出窗口HTML会在下一次打开时更新。是的,一个演示/小提琴将有助于解决此问题。但我正在获取真实设备的lat/lon和旋转那是发送gps,所以我不能做JSFIDLE。