我试图将数据存储在数组中,以便稍后在其他组件中获取它,但是这会引起错误:
错误TypeError:无法读取未定义的属性“ push”
我使用了本地存储。
onSubmit() {
let email = this.AuthForm.get("email").value;
let password = this.AuthForm.get("password").value;
let nomcomplet = "";
let occupation = "";
let niveau = 0;
let newUser = new User(email, password, nomcomplet, occupation, niveau);
console.log(newUser);
let val: any = [];
val = this.storage.get(this.key);
val.push(newUser.email);
this.storage.set(this.key, JSON.stringify(val));
}
我希望在本地存储中找到所有存储的值,但实际是错误的,只有最后一个值被存储在
屏幕截图
答案 0 :(得分:0)
您已将数据存储为字符串,因此在检索数据时,应将其解析回为对象。
集合存储
this.storage.set(this.key, JSON.stringify(val));
从存储中检索
const storageVal = this.storage.get(this.key)
const val = JSON.parse(storageVal)
您可能还想添加一种方法来处理存储对象不存在(返回null
值)的情况
const storageVal = this.storage.get(this.key)
const val = storageVal ? JSON.parse(storageVal) : []
答案 1 :(得分:0)
好吧,尝试一下
void *my_memmove(void *dest, const void *src, size_t len)
{
const unsigned char *s = (const unsigned char *)src;
unsigned char *d = (unsigned char *)dest;
if(dest < src)
{
/* copy s to d forwards */
}
else
{
/* copy s to d backwards */
}
return dest;
}
请记住,src
始终必须相同(y)
当您需要其他组件上的数据时,只需使用
dest