我正在尝试使用本地存储来存储一些纹理对象,但它似乎无法工作。
for (var i = 0; i < 6; i++) {
localStorage.setItem("name" + i, Transition.blurPano.getTexture(path + img_name[i] + ".jpg", dfrd[i], true, i));
console.log(localStorage.getItem("name" + i) == Transition.blurPano.getTexture(path + img_name[i] + ".jpg", dfrd[i], true, i));
Transition.blurPano.mesh.material.materials[i].map = localStorage.getItem("name" + i);
}
这里我尝试使用key = "name" + i
在本地存储中存储键值对,value是gettexture函数返回的纹理对象,但这似乎不起作用。
答案 0 :(得分:7)
您无法直接在localstorage中存储对象。 解决方法可以是在存储对象之前对其进行字符串化,然后在检索对象时对其进行解析:
var name = { 'first': 1, 'second': 2, 'third': 3 };
// Put the object into storage
localStorage.setItem('name', JSON.stringify(name));
// Retrieve the object from storage
var retrievedObject = JSON.parse(localStorage.getItem('name'));