Simple Console
Provides a simple, but useful cross-browser-compatible console
logger.
Features
- Proxies to native functionality wherever possible.
- Enables
.apply
and.bind
usage withconsole.OPERATION
. - Buildable from straight CommonJS source.
- Available as minified distributions as well.
Installation
Install via npm:
$ npm install simple-console
or bower:
$ bower install simple-console
Usage
Import the SimpleConsole
class into your code (via AMD, CommonJS, etc) and
use as a drop-in replacement for console.OPERATION
. Creating a new object
does not effect the existing window.console
object.
AMD
;
CommonJS
var SimpleConsole = ;var con = ;con;
VanillaJS
In your HTML:
<!-- Option One: Minified --> <!-- Option Two: Raw source -->
In your JS:
var con = ;con;
Noop Logger
There are some cases where you will want to conditionally silence the logger.
You can do this by passing setting the noop
option:
var con = noop: true ;con; // => Should _not_ output anything.
This is usually useful in a case where you build different capabilities based on some external information, for example, React-style, this could be something like:
var con = noop: processenvNODE_ENV === "production"; con; // => Should _not_ output anything in `production`.
Polyfill
If you are looking to polyfill console
, then you can:
patch: true ;
This will mutate the window.console
object in ways that are not easily
undone, so consider this a "one way" patch. Moreover, if window.console
does not exist, it will create the object.
You can even go further and patch and noop the logger with:
patch: true noop: true ;
which ensures that nothing logs anything.
Note: In addition to filling/patching missing behavior, the polyfill will
replace behavior that already exists and works. This is presently due to
complexities likely normalizing and ensuring things like .bind
, .apply
and .call
work on all log methods.
Development
Run checks, then development server:
$ gulp
Separated:
$ gulp check
$ gulp dev
Node demo:
$ node examples/demo.js
Navigations:
- Test Page: http://127.0.0.1:4321/test/test.html
- Demo Page: http://127.0.0.1:4321/examples/demo.html
Release process:
- Bump versions in
package.json
,bower.json
- Run
npm run-script everything
- Edit
HISTORY.md
- Run
gulp check:all
Also See
Similar projects that can help with console
:
License
Copyright 2015 Formidable Labs, Inc. Released under the MIT License,