almin.github.io

almin-logger Build Status

Logger class for Almin.js

logger

Feature

Mark meaning

Installation

 npm install almin-logger

Old IE need console-polyfill

Usage

import ContextLogger from "almin-logger";
// your store
import AppStore from "./stores/AppStore";
// context
import {Context, Dispatcher}  from "almin";
// instances
const dispatcher = new Dispatcher();
// context connect dispatch with stores
const appContext = new Context({
    dispatcher,
    store: AppStore.create()
});
// Create Logger
const logger = new ContextLogger();
// Start logger
logger.startLogging(appContext);

See Examples for more details.

Options:

new ContextLogger(options)

const DefaultOptions = {
    // output log asynchronously
    async: true,
    // use `console` object for logging
    console: console,
};

Async mode

Default: output log asynchronously

Pros

Cons

Sync mode

Set async: false to options.

// Create Logger
const logger = new ContextLogger({
    async: false
});
// Start logger
logger.startLogging(appContext);

Pros

Cons

FAQ

IE 11 always show log like “Dispatch”.

IE 11 not have Function.name. almin-logger depended on Function.name or Function.displayName.

You can resolve this issue by using babel-plugin-class-display-name. This plugin set displayName to each UseCase class.

Alternative

Tests

In Node.js

npm test

In Browser

npm run test:browser

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

MIT