UNPKG

4.01 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = undefined;
7
8var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
9
10var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
11
12var _createClass2 = require('babel-runtime/helpers/createClass');
13
14var _createClass3 = _interopRequireDefault(_createClass2);
15
16function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
18(function () {
19 var enterModule = require('react-hot-loader').enterModule;
20
21 enterModule && enterModule(module);
22})();
23
24/*
25 * @author: 冯炎
26 * @update: 20171201
27 * @description: 操作cookie,提供get和set、del方法
28 * */
29var Cookies = function () {
30 function Cookies() {
31 (0, _classCallCheck3.default)(this, Cookies);
32 }
33
34 (0, _createClass3.default)(Cookies, [{
35 key: 'get',
36
37
38 /*
39 * 通过key值获取cookie
40 * */
41 value: function get(key) {
42 if (typeof window === 'undefined') return;
43 var getCookie = document.cookie.replace(/[ ]/g, ''); // 获取cookie,去空格
44 var arrCookie = getCookie.split(';'); // 以;分号做分隔生成数组
45 var cookie = ''; // 获取cookie
46 arrCookie.map(function (_cookie) {
47 // 遍历cookie,获取指定的cookie值,并返回
48 var cookieArr = _cookie.split('=');
49 if (cookieArr[0] === key) {
50 cookie = cookieArr[1];
51 }
52 });
53 return cookie;
54 }
55 }, {
56 key: 'getFromServer',
57 value: function getFromServer(key, req) {
58 if (typeof window === 'undefined') return;
59 var getCookie = req.get('cookie'); // 获取cookie,去空格
60 var arrCookie = getCookie.split(';'); // 以;分号做分隔生成数组
61 var cookie = ''; // 获取cookie
62 arrCookie.map(function (_cookie) {
63 // 遍历cookie,获取指定的cookie值,并返回
64 var cookieArr = _cookie.split('=');
65 if (cookieArr[0] === key) {
66 cookie = cookieArr[1];
67 }
68 });
69 return cookie;
70 }
71
72 /*
73 * 设置cookie
74 * time有效时间为选填项
75 * domain归属域为选填项
76 * */
77
78 }, {
79 key: 'set',
80 value: function set(key, value, time, domain) {
81 if (typeof window === 'undefined') return;
82 var expires = '';
83 var domains = '';
84 var cookies = key + '=' + value + ';';
85 if (time) {
86 var date = new Date();
87 date.setTime(date.getTime() + time * 24 * 3600 * 1000);
88 expires = 'expires=' + date.toGMTString() + ';';
89 cookies += expires;
90 }
91 if (domain) {
92 domains = 'path=/;domain = ' + domain + ';';
93 cookies += domains;
94 }
95 document.cookie = cookies;
96 }
97
98 /*
99 * 通过设置cookie的有效时间小于当前,删除cookie
100 * domain为先填项,如果设置了domain,则删除cookie时需要传入domain
101 * */
102
103 }, {
104 key: 'del',
105 value: function del(key, domain) {
106 if (typeof window === 'undefined') return;
107 var date = new Date();
108 var domains = '';
109 date.setTime(date.getTime() - 1000);
110 if (domain) {
111 domains = ';path=/;domain = ' + domain + ';';
112 }
113 document.cookie = key + '=del;expires =' + date.toGMTString() + domains;
114 }
115 }, {
116 key: '__reactstandin__regenerateByEval',
117 value: function __reactstandin__regenerateByEval(key, code) {
118 this[key] = eval(code);
119 }
120 }]);
121 return Cookies;
122}();
123
124exports.default = Cookies;
125;
126
127(function () {
128 var reactHotLoader = require('react-hot-loader').default;
129
130 var leaveModule = require('react-hot-loader').leaveModule;
131
132 if (!reactHotLoader) {
133 return;
134 }
135
136 reactHotLoader.register(Cookies, 'Cookies', '../../src/common/Cookies.js');
137 leaveModule(module);
138})();
139
140;
141module.exports = exports['default'];
142//# sourceMappingURL=Cookies.js.map
\No newline at end of file