有没有办法将用户创建的标记添加到localStorage
?如果浏览器刷新或关闭,我想检索用户添加的标记的相同坐标。似乎localStorage
可以帮助实现这一目标。
我正在尝试如下的事情,这看起来并不正确。请注意,我是JavaScript的新手。
google.maps.event.addListener(marker, "dragend", function() {
localStorage.setItem('marker',true);
localStorage.getItem('marker');
});
我认为可能是在localStorage
设置了标记,但在页面刷新时我无法看到它。
谢谢。
答案 0 :(得分:1)
如果您尝试存储标记本身,您将收到错误"将循环结构转换为JSON",即使在对其进行字符串化之后也是如此。此外,它还会存储您可能不需要的额外数据。由于篇幅限制,我建议您尽可能少地在浏览器中存储。
您可以做的是创建数据类型以保存标记(lat和long)的信息并存储此对象。请参阅以下内容....
var latlng = new google.maps.LatLng(42.123456789, -36.123456789);
var marker = new google.maps.Marker({
position: latlng
});
var newMarker = {Lat: marker.position.lat(), Lng: marker.position.lng()};
localStorage["marker1"] = JSON.stringify(newMarker);
console.log(localStorage["marker1"]);