如何使用 universal-cookie 持久化 cookie

How to presist a cookie with universal-cookie

我使用 在我的 React 应用程序中设置了一个 cookie。不过它会随着会话过期。我如何存储此 cookie,以便它在会话之后持续存在,以便在浏览器关闭并重新打开时它仍然存在?

export default function App() {

  const [classnameTr,setClassname] = useState<string>("checkbox-row1");
  const [classnameLabel, setClassnameLabel] = useState<string>("my-label-black"); 
  const cookies = new Cookies();

  function setCookie() {
    cookies.set('certDiscCookie', 'certDiscCookieSet', { path: '/' });
    console.log("Cookies: " + cookies.get('certDiscCookie'));
  }

  function getCookie() {
    if (cookies.get('certDiscCookie') === "certDiscCookieSet") {
      setColor();
    }
  }

  return (
    <div className="App">
      <header className="App-header">
        <div className="checkbox-div">
          <table className="checkbox-table">
            <tbody>
                <td className="tr2-td2"><button className="certDiscButtonSet" onClick={() => setCookie()}>Set Cookie</button></td>
                <td className="tr3-td3"><button className="certDiscButtonGet" onClick={() => getCookie()}>Get Cookie</button></td>
              </tr>
            </tbody>
          </table>
        </div>
      </header>
    </div>
  );
}

如果您不设置 expires 选项,它将以类似于 original cookies.set() 选项的方式工作 - 它成为会话 cookie。您必须设置一段时间后它会过期。如果这样做,它将在您重新启动浏览器后保留。没有办法让它长生不老。您可以将日期设置到很远的将来。