NPM包:浏览器Cookie工具 > cookie-utils-js

486 阅读1分钟

cookie-utils-js

一个简单,轻量级的javascript工具,为客户端渲染的网站提供更方便的cookie操作方式。

安装

$ npm install cookie-utils-js
# or
$ yarn add cookie-utils-js

使用

import Cookie from 'cookie-utils-js';

Cookie.set('foo', 'bar');

API

1、创建: Cookie.set(...)

1.1、单个创建 cookie:

Cookie.set('foo', 'bar');
// or
Cookie.set({ name: 'foo', value: 'bar', ... });

1.2、批量创建 cookie:

Cookie.set([
    { name: 'foo1', value: 'bar1' },
    { name: 'foo2', value: 'bar2' }
]);

1.3、为 cookie 指定过期时间(expires):Date | number(毫秒),或其他配置:path, domain 等:

Cookie.set('foo', 'bar', { expires: 7 * 1000, path: '/' });
// or
Cookie.set({ name: 'foo', value: 'bar', expires: 7 * 1000, path: '/' });

2、获取: Cookie.get(...)

2.1、获取当前 path 下所有 cookies,以 json 格式返回:

Cookie.get(); // => { foo: 'bar' }

2.2、单个获取 cookie:

Cookie.get('foo'); // => 'bar'

2.3、批量获取 cookie,以 json 格式返回:

Cookie.get(['foo1', 'foo2']); // => { foo1: 'bar1', foo2: 'bar2' }

2.4、获取 cookie,并以别名(alias)作为新属性名返回一个 json:

Cookie.get([
    { name: 'foo1' }, 
    { name: 'foo2', alias: 'FOO2' } // 设置别名
]); // => { foo1: 'bar1', FOO2: 'bar2' }

3、删除: Cookie.remove(...)

3.1、单个删除cookie:

Cookie.remove('foo');
// or
Cookie.remove('foo',  '/'); // 删除指定 path 下的 cookie

3.2、批量删除cookie:

Cookie.remove(['foo1', 'foo2']);
// or
Cookie.remove([
    { name: 'foo1' },
    { name: 'foo2', path: '/' } // 删除指定 path 下的 cookie
]);

4、清空: Cookie.clear()

清空当前path(默认'/')下所有cookie

5、浏览器状态:Cookie.browserEnabled

浏览器是否禁用了cookie