Nearly Perfected Mystique

    use-reducer-logger
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    use-reducer-logger

    A very very basic logger for the useReducer function in the React Hooks API. Inspired by redux-logger.

    screenshot of logger

    Usage

    1. Install with npm install use-reducer-logger --save-dev or yarn add use-reducer-logger -D
    2. Import logger with
    import logger from 'use-reducer-logger';
    1. Wrap your reducer with logger before passing it to useReducer
    const [state, dispatch] = useReducer(logger(reducer), initialState);

    See Example

    In a Dev Environment

    You should only use this in a dev environment. So you could do something like this to apply the logger based on the env.

    function reducer(state, action) {
      switch (action.type) {
        case 'increment':
          return {count: state.count + 1};
        case 'decrement':
          return {count: state.count - 1};
        default:
          throw new Error();
      }
    }
     
    const [state, dispatch] = (
      process.env.NODE_ENV === 'development' ? logger(reducer) : reducer,
      initialState
    );

    License

    MIT see LICENSE.

    Contributing

    Contributions are welcome.

    Install

    npm i use-reducer-logger

    DownloadsWeekly Downloads

    3,375

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    26.9 kB

    Total Files

    6

    Last publish

    Collaborators

    • jefflombard