Javascript 如何获取js cookie

Javascript 如何获取js cookie,javascript,reactjs,cookies,setcookie,Javascript,Reactjs,Cookies,Setcookie,我有一个从js cookie设置cookie的代码 Cookies.set("currentCity", selected ? JSON.stringify(selected.city) : "", { domain: `.${process.env.DOMAIN}`, }) 当我试图在currentCity变量发生变化时获取cookie时 useEffect(() => { console.log('All Cookies' ,Cookies.g

我有一个从js cookie设置cookie的代码

Cookies.set("currentCity", selected ? JSON.stringify(selected.city) : "", {
            domain: `.${process.env.DOMAIN}`,
})
当我试图在currentCity变量发生变化时获取cookie时

    useEffect(() => {
    console.log('All Cookies' ,Cookies.get())
  }, [currentCity])
控制台中有以下内容

_pk_id.10.1fff: "7f704b7a9d967f1e.1577256464.0.1577265589.."
另外,当我没有设置Cookie时,只是删除了Cookies.set

我在console.log中也有相同的功能

_pk_id.10.1fff: "7f704b7a9d967f1e.1577256464.0.1577265589.."

我做错了什么?_pk_id.10.1ff是否与我第一次设置的Cookie相同?

您每次都将Cookie值设置为currentCity,而不清除其值,以防您没有关闭浏览器,也许先删除Cookie可能会解决您的问题

这里有一个建议:


const domain = { domain: `.${process.env.DOMAIN}` };
if (selected === true) {
  if (Cookies.get("currentCity")) {
    Cookies.remove("currentCity");
    Cookies.set("currentCity", JSON.stringify(selected.city),domain);
  }
} else {
  Cookies.set("currentCity", "", domain);
}


试着在跑步前清除所有的饼干。还要在Cookie.set行之前记录selected和JSON.stringifyselected.city变量。可能当您删除Cookie.set并记录时,它仍在记录相同的值,因为Cookie在第一次迭代中已设置且未删除