1.0.1 • Published 9 years ago
redux-effects-universal-cookie v1.0.1
redux-effects-universal-cookie
Universal version of redux-effects-cookie.
Installation
npm install --save redux-effects-universal-cookieUsage
Installing the middleware
for Browsers:
import { createStore, applyMiddleware } from 'redux';
import cookieMiddleware from 'redux-effects-universal-cookie';
import rootReducer from './reducers';
const store = createStore(
rootReducer,
applyMiddleware(
cookieMiddleware() // no args
)
);for Express:
import { createStore, applyMiddleware } from 'redux';
import cookieMiddleware from 'redux-effects-universal-cookie';
import rootReducer from './reducers';
app.get('/', function(req, res){
const store = createStore(
rootReducer,
applyMiddleware(
cookieMiddleware(req, res)
)
);
});import { createStore, applyMiddleware } from 'redux';
import cookieMiddleware from 'redux-effects-universal-cookie';
import rootReducer from './reducers';
app.use(function *(){
const store = createStore(
rootReducer,
applyMiddleware(
cookieMiddleware(this.cookies)
)
);
});Using Actions:
getting cookie:
import { cookie } from 'redux-effects-univarsal-cookie';
const propmise = store.dispatch(cookie('foo'));setting cookie:
import { cookie } from 'redux-effects-univarsal-cookie';
const propmise = store.dispatch(cookie('foo', 'some value'));setting cookie with options:
import { cookie } from 'redux-effects-univarsal-cookie';
const propmise = store.dispatch(cookie('foo', 'some value', { maxAge: 600 }));Defferences from redux-effects-cookie
On the server-side,
redux-effects-cookie
does not reflect the setting to a cookie for a response (i.e. Set-Cookie headers.).
On the other hand, redux-effects-universal-cookie sets Set-Cookie headers properly.
API
Action Creators
cookie(name, [value], [options])
Arguments
name(String): The name of cookie.value(Any): If omitted, returns the cookie value. Otherwise, sets the cookie value. Passingnullas value deletes the cookie.options(Object): Please see below links for more options: Browser Express * Koa (cookies)
Returns
- (Object): An action object.
Middleware
cookieMiddleware()
Create Redux middleware for browser environment.
Returns
- (Function) Redux middleware.
cookieMiddleware(cookies)
Create Redux middleware for Koa environment.
Arguments
cookies(Object): The cookies object.
Returns
- (Function) Redux middleware.
cookieMiddleware(req, res)
Create Redux middleware for Express environment.
Arguments
Returns
- (Function) Redux middleware.