Package Exports
- option-cache
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (option-cache) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
option-cache

Simple API for managing options in JavaScript applications.
Install
Install with npm
$ npm i option-cache --save
Docs
API
Options
Create a new instance of Options
.
Params
options
{Object}: Initialize with default options.
Example
var app = new Options();
.option
Set or get an option.
Params
key
{String}: The option name.value
{any}: The value to set.returns
{any}: Returns avalue
when onlykey
is defined.
Example
app.option('a', true);
app.option('a');
//=> true
.hasOption
Return true if options.hasOwnProperty(key)
Params
prop
{String}returns
{Boolean}: True ifprop
exists.
Example
app.hasOption('a');
//=> false
app.option('a', 'b');
app.hasOption('a');
//=> true
.enable
Enable key
.
Params
key
{String}returns
{Object}Options
: to enable chaining
Example
app.enable('a');
.disable
Disable key
.
Params
key
{String}: The option to disable.returns
{Object}Options
: to enable chaining
Example
app.disable('a');
.enabled
Check if prop
is enabled (truthy).
Params
prop
{String}returns
{Boolean}
Example
app.enabled('a');
//=> false
app.enable('a');
app.enabled('a');
//=> true
.disabled
Check if prop
is disabled (falsey).
Params
prop
{String}returns
{Boolean}: Returns true ifprop
is disabled.
Example
app.disabled('a');
//=> true
app.enable('a');
app.disabled('a');
//=> false
.isTrue
Returns true if the value of prop
is strictly true
.
Params
prop
{String}returns
{Boolean}: Uses strict equality for comparison.
Example
app.option('a', 'b');
app.isTrue('a');
//=> false
app.option('c', true);
app.isTrue('c');
//=> true
app.option({a: {b: {c: true}}});
app.isTrue('a.b.c');
//=> true
.isFalse
Returns true if the value of key
is strictly false
.
Params
prop
{String}returns
{Boolean}: Uses strict equality for comparison.
Example
app.option('a', null);
app.isFalse('a');
//=> false
app.option('c', false);
app.isFalse('c');
//=> true
app.option({a: {b: {c: false}}});
app.isFalse('a.b.c');
//=> true
.isBoolean
Return true if the value of key is either true
or false
.
Params
key
{String}returns
{Boolean}: True iftrue
orfalse
.
Example
app.option('a', 'b');
app.isBoolean('a');
//=> false
app.option('c', true);
app.isBoolean('c');
//=> true
Example app
Use options-cache in your javascript application:
var util = require('util');
var Options = require('options-cache');
function App(options) {
Options.call(this, options);
this.init();
}
util.inherits(App, Options);
App.prototype.init = function() {
this.option('cwd', process.cwd());
this.option('foo', 'bar');
};
App.prototype.a = function(value) {
this.enable(value);
};
App.prototype.b = function(value) {
if (this.enabled(value)) {
// do something
} else {
// do something else
}
};
Related
- cache-base: Generic object cache for node.js/javascript projects. | homepage
- config-cache: General purpose JavaScript object storage methods. | homepage
- engine-cache: express.js inspired template-engine manager. | homepage
- helper-cache: Easily register and get helper functions to be passed to any template engine or node.js… more | homepage
- loader-cache: Register loader functions that dynamically read, parse or otherwise transform file contents when the name… more | homepage
- map-cache: Basic cache object for storing key-value pairs. | homepage
- parser-cache: Cache and load parsers, similiar to consolidate.js engines. | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Running tests
Install dev dependencies:
$ npm i -d && npm test
Coverage
As of October 29, 2015:
Statements : 100% (45/45)
Branches : 100% (18/18)
Functions : 100% (11/11)
Lines : 100% (45/45)
Changelog
v3.0.0
- breaking change: the
toFlag
method was removed - Adds gulp and istanbul for test coverage
- 100% test coverage
v2.0.0
- Implements
mapVisit
to ensuree thatoption
will be called and an event will be emitted for each key-value pair passed on the arguments. - Adds
mixin
as a static method, for mixing the properties ofoption-cache
onto the provided object.
Author
Jon Schlinkert
License
Copyright © 2015 Jon Schlinkert Released under the MIT license.
This file was generated by verb-cli on October 29, 2015.