类型错误:无法将对象"#"的只读属性分配给 <Object>Firebase 存储的 Redux 工具包切片 反应原生



你好,我正在尝试在上传到firebase存储后设置我的downloadUrl,但我似乎无法使用Redux Toolkit。我有一个解决方案,但我宁愿以正确的方式使用它,但我似乎不知道它会喜欢得到一些反馈

这是文档示例。我知道数字的作用与对象不同,但如果它们可以这样改变,为什么我不能呢

incrementByAmount: (state, action) => {
state.value += action.payload
},

这是我的代码:

setImageUrl: (state, action: PayloadAction<string>) => {
state.imageUrl = action.payload;
},

这里是我称之为的地方


const downloadUrl = await FirebaseStorageService.uploadFile(
photo,
setUploadProgress
);
dispatch(setImageUrl(downloadUrl));

这是错误

ossible Unhandled Promise Rejection (id: 5):
TypeError: Cannot assign to read only property 'imageUrl' of object '#<Object>'
TypeError: Cannot assign to read only property 'imageUrl' of object '#<Object>'

提前谢谢你我在其他地方看到过类似的问题,但我觉得答案不清楚。我可以直接或不使用RTK更改对象的属性吗?

我解决了它,但我认为它不是正确的分辨率,或者说它并不能真正向我解释来自.Net的RTK。我只是觉得这是不正确的:

const downloadUrl = await FirebaseStorageService.uploadFile(
photo,
setUploadProgress
);
reduxExpense.imageUrl = downloadUrl;
dispatch(setExpense(reduxExpense));

我不认为我们需要redux,相反,我可以做:

expense.ImageUrl = downloadUrl; 

或者这是一个正确的实现?有人能帮忙吗?谢谢

相关内容

最新更新