我在reactjs中使用表单。我现在将用户数据存储在localstorage中,我想上传文件,并且要存储具有已存储在localstorage中的userID的文件密钥。使用localstorage.getItem('user')
可以显示用户值,但不能在键中使用,当我在控制台中显示用户值时,它会给我未定义的消息。您能帮我怎样用用户名设置密钥。
代码
handleUpload = e => {
const reader = new FileReader();
const storeUser = JSON.parse(localStorage.getItem('user'));
reader.onload = function(upload) {
fetch(`http://...../s3/uploadtoaws`, {
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
method: 'POST',
body: JSON.stringify({
userId: storeUser._id,
type: 'employee',
content: upload.target.result,
key: this.userId,
oldKey: '',
}),
})
.then(response => response.json())
.then(res => {
console.warn(res);
})
.done();
};
reader.readAsDataURL(e.file.originFileObj);
};
答案 0 :(得分:0)
let user = JSON.parse(localStorage.getItem('user'));
const { id: userId } = user;
现在,您可以在共享的上述请求中使用userId
。
答案 1 :(得分:-1)
如果有激励作用,请使用窗口对象存储数据
就像
//这样存储。 window.user = {“ _id”:1,“ userName”:“ Bhavin00”};
//像这样使用。 console.log(window.user);
或者您可以使用npm软件包,例如:-reactjs-localstorage