【问题标题】:cookie in React JS (save/load)React JS 中的 cookie(保存/加载)
【发布时间】:2018-03-21 01:22:07
【问题描述】:

我是在 React JS 中使用 cookie 的新手,我对下面的代码有疑问。

console.log(this.state.datasets);
cookie.save('datasets', this.state.datasets, { path: '/' , 'maxAge': 100000});
var myArray = cookie.load('datasets')
console.log(myArray);

this.state.datasets 是一个充满元素的数组,我最初将数组打印到控制台,我能够看到数据。 但是,当我尝试打印出myArray 时,我得到一个空数组。知道可能出了什么问题吗?

【问题讨论】:

  • 你在使用任何库吗?
  • 是的,很抱歉我应该把它包括在内。我正在使用 react-cookies

标签: reactjs cookies


【解决方案1】:

您只能将字符串保存为 cookie。要保存数组,您必须以某种方式将其转换为字符串。如果您有一个对象数组,您可以通过JSON.stringify 将其转换为字符串来存储它。

例如

let colors = [
{
    color: "red",
    value: "#f00"
},
{
    color: "green",
    value: "#0f0"
},
{
    color: "blue",
    value: "#00f"
}]

let x = JSON.stringify(colors)

值 x 将是一个字符串,您可以将其保存到 cookie。

要检索它,您可以使用 JSON.parse 将其转换回对象数组。

有点像

var myArray = cookie.load('datasets')
let obj =  JSON.parse(myArray)

obj 将是原始对象

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-24
    • 1970-01-01
    • 2021-07-13
    • 1970-01-01
    • 2013-10-04
    • 1970-01-01
    • 2020-12-11
    相关资源
    最近更新 更多