我正在尝试将地图保存到我的本地存储中,由于某种原因,它从未保存过。也就是说,它只是另存为{}。最令人讨厌的是,我确定这昨天有效!
非常感谢所有帮助。
export async function getSportsList(){
let liveOddsApiKey = "blahdedah";
try{
let result = await axios (`${dataSourceURL}${sportDataURL}${liveOddsApiKey}`)
let sportList = new Map();
result.data.data.forEach(x=>{
sportList.set(x.title,x.key);
});
console.log("Data Loaded");
console.log(result);
console.log(sportList);
console.log(JSON.stringify(sportList));
localStorage.setItem('sportsData',JSON.stringify(sportList));
console.log(localStorage.getItem('sportsData'));
debugger;
} catch(error){alert(error);}
}
'''
答案 0 :(得分:0)
JSON.stringify结果为{}。参见https://stackoverflow.com/a/29085474/176868
请尝试...
const sportList = result.data.data.map(x=>({title:x.title, key:x.key}));
..其余代码应该可以正常工作。
答案 1 :(得分:0)
您不能直接JSON.stringify
Map
。您可以将sportslist
存储为数组,并将其存储在localStorage中。
不确定在result
中收到什么数据。我在下面的小提琴中添加了虚拟数据。
请参见fiddle