返回 cookie 值的函数



这是我用来创建cookie的代码

document.cookie = (firebase.auth().currentUser.phoneNumber);
handleSignedInUser(user);

这是我用来读取cookie值并将其值分配给谷歌地图标记标签

的代码

var markerLabel = document.cookie;
var marker = new google.maps.Marker({
position: {
lat: data.User.l[0],
lng: data.User.l[1]

},
map: map,
label: markerLabel
});

主页图片 它不仅显示电话号码,还显示电话号码未定义。另一位堆栈溢出用户提到我没有正确返回 cookie 的值。 我发现这个函数用于返回 cookie 的值 https://www.w3schools.com/js/js_cookies.asp

function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
我似乎无法弄清楚如何将此功能应用于我的代码。如果有人能帮我解决这个问题,我将不胜感激

您需要使用名称正确设置 cookie,以便以后可以按名称读取它。无论你在哪里找到getCookie函数,都应该有一个相反的功能,比如setCookie,你应该用它来设置cookie。所以你的工作流程将是这样的:

setCookie('phoneNumber', firebase.auth().currentUser.phoneNumber);

然后

var markerLabel = getCookie('phoneNumber');
var marker = new google.maps.Marker({
position: {
lat: data.User.l[0],
lng: data.User.l[1]
},
map: map,
label: markerLabel
});

最新更新