在React.js中,可以使用localStorage来存储JWT token,并通过检查token的过期时间来判断是否需要更新token。下面是一个简单的示例代码:
import React, { useEffect, useState } from 'react';
const App = () => {
const [token, setToken] = useState('');
useEffect(() => {
// 从localStorage中获取token
const storedToken = localStorage.getItem('token');
if (storedToken) {
setToken(storedToken);
}
}, []);
const handleLogin = () => {
// 模拟登录,获取新的token
const newToken = 'new_jwt_token';
// 存储新的token到localStorage
localStorage.setItem('token', newToken);
setToken(newToken);
};
const handleLogout = () => {
// 清除localStorage中的token
localStorage.removeItem('token');
setToken('');
};
return (
{token ? (
已登录
) : (
未登录
)}
);
};
export default App;
在上面的代码中,我们使用useState hook来存储token的状态,并在组件加载时从localStorage中检查是否存在token。如果存在,我们将其设置为组件的初始状态。当用户点击登录按钮时,我们会模拟登录并获取新的token,然后将其存储到localStorage中。当用户点击退出登录按钮时,我们会从localStorage中移除token,并将组件的状态设置为未登录状态。
通过这种方式,我们可以在本地存储中存储和更新JWT token,并根据需要来使用它。请注意,这只是一个简单的示例,实际的实现可能会更复杂,需要根据实际情况进行调整。
上一篇:本地存储不保留数值
下一篇:本地存储不会保存我的表单输入。