当前位置:首页 > React

react 如何操作cookie

2026-02-11 15:33:39React

操作 Cookie 的方法

在 React 中操作 Cookie 可以通过原生 JavaScript 的 document.cookie 或第三方库(如 js-cookie)实现。以下是具体方法:

原生 JavaScript 方法

使用 document.cookie 直接读写 Cookie:

// 设置 Cookie
document.cookie = "username=JohnDoe; expires=Thu, 18 Dec 2023 12:00:00 UTC; path=/";

// 读取 Cookie
const cookies = document.cookie.split(';').reduce((acc, cookie) => {
  const [name, value] = cookie.trim().split('=');
  acc[name] = value;
  return acc;
}, {});
console.log(cookies.username); // 输出 "JohnDoe"

// 删除 Cookie
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";

使用 js-cookie 库

安装 js-cookie 库:

npm install js-cookie

在组件中使用:

import Cookies from 'js-cookie';

// 设置 Cookie
Cookies.set('username', 'JohnDoe', { expires: 7, path: '/' });

// 读取 Cookie
const username = Cookies.get('username');
console.log(username); // 输出 "JohnDoe"

// 删除 Cookie
Cookies.remove('username', { path: '/' });

注意事项

  • 安全性:避免存储敏感信息,考虑使用 HttpOnlySecure 标志增强安全性。
  • 路径和域名:明确指定 pathdomain 以确保 Cookie 在正确的作用域生效。
  • 过期时间:设置合理的 expiresmax-age 控制 Cookie 生命周期。

服务端渲染(SSR)场景

在 Next.js 等框架中,需区分客户端和服务端环境:

react 如何操作cookie

if (typeof window !== 'undefined') {
  // 客户端操作 Cookie
  Cookies.set('token', '12345');
}

通过以上方法,可以灵活地在 React 中管理 Cookie。

标签: 操作react
分享给朋友:

相关文章

如何降低react版本

如何降低react版本

降低 React 项目版本的步骤 检查当前 React 版本 运行以下命令查看项目中安装的 React 当前版本: npm list react 或 yarn list react 修改…

react如何发布

react如何发布

发布React应用的步骤 构建生产版本 使用以下命令生成优化后的生产版本代码,代码会被压缩并移除开发环境中的调试工具: npm run build 构建完成后会生成build文件夹,包含所有静态资源…

typescript react 如何

typescript react 如何

TypeScript 与 React 结合使用的方法 在 React 项目中使用 TypeScript 可以提升代码的可维护性和类型安全性。以下是一些关键步骤和最佳实践: 安装 TypeScript…

如何调试react

如何调试react

调试 React 应用的方法 使用 React Developer Tools 安装浏览器扩展(Chrome/Firefox),通过组件树查看组件状态、props 和 hooks。支持实时编辑 pro…

react如何重启

react如何重启

重启 React 应用的方法 重新加载当前页面 使用 window.location.reload() 强制刷新页面,这会重新加载整个应用并重置所有状态。 window.location…

react 如何精通

react 如何精通

掌握核心概念 深入理解React的基础概念,包括组件(函数组件与类组件)、状态(useState)、生命周期(useEffect)、Props传递、虚拟DOM与Diff算法。通过官方文档或《React…