【发布时间】:2023-02-25 22:02:24
【问题描述】:
我需要在用户授权时将令牌存储在本地存储中,但在提交 <Formik/> 表单后它不会发生。
我认为问题出现是因为该属性不存在。但是 console.log(Boolean(data.payload,token)) 显示为 true。 Token 存在但无法将其存储在 localStorage 中。
const formikSubmit = async (values) => {
const data = await dispatch(fetchAuth(values))
if ("token" in data.payload) {
localStorage.setItem("token", data.payload.token)
} else {
alert("failed to login")
}
}
【问题讨论】:
-
token 是字符串吗?您是否在控制台中看到任何错误消息?你怎么知道你无法将它存储在 localStorage 中。请提供更多调试细节。
-
@Yogi 是的,typeof data.payload.token 返回字符串
-
@Yogi 因为即使点击后 localstorage 也是空的。 JSON.parse 和 JSON.stringify 都解决不了
标签: javascript reactjs redux local-storage formik