app-base
v0.1.1
Published
Starter for creating a node.js application with a handful of common methods, like `set`, `get`, and `del`.
Downloads
233
Maintainers
Readme
app-base
Starter for creating a node.js application with a handful of common methods, like
set
,get
, anddel
.
Install
Install with npm
$ npm i app-base --save
Usage
var Base = require('app-base');
API
Base
Create an instance of Base
with optional options
.
Params
options
{Object}
Example
var app = new Base();
app.set('foo', 'bar');
console.log(app.get('foo'));
//=> 'bar'
.set
Assign value
to key
.
Params
key
{String}value
{*}returns
{Object}: Returns the instance for chaining.
Example
app.set(key, value);
// also takes an object or array
app.set({name: 'Halle'});
app.set([{foo: 'bar'}, {baz: 'quux'}]);
console.log(app);
//=> {name: 'Halle', foo: 'bar', baz: 'quux'}
.get
Return the stored value of key
. Dot notation may be used to get nested property values.
Params
key
{*}escape
{Boolean}returns
{*}
Example
app.set('foo', 'bar');
app.get('foo');
// => "bar"
.del
Delete key
from the instance.
Params
key
{String}returns
{Object}: Returns the instance for chaining.
Example
app.del(); // delete all
// or
app.del('foo');
// or
app.del(['foo', 'bar']);
.define
Define a non-enumerable property on the instance.
Params
key
{String}value
{any}returns
{Object}: Returns the instance for chaining.
Example
// arbitrary `render` function using lodash `template`
define('render', function(str, locals) {
return _.template(str)(locals);
});
.visit
Visit method
over the items in the given object, or map
visit over the objects in an array.
Params
method
{String}val
{Object|Array}returns
{Object}: Returns the instance for chaining.
.extend
Static method for inheriting both the prototype and static methods of the Base
class.
Params
Ctor
{Function}: The constructor to extend.
Example
function MyApp(options) {
Base.call(this, options);
}
Base.extend(MyApp);
// Optionally pass another object to extend onto `MyApp`
function MyApp(options) {
Base.call(this, options);
Foo.call(this, options);
}
Base.extend(MyApp, Foo.prototype);
Related projects
- define-property: Define a non-enumerable property on an object. | homepage
- get-value: Use property paths (
a.b.c
) to get a nested value from an object. | homepage - set-value: Create nested values and any intermediaries using dot notation (
'a.b.c'
) paths. | homepage - unset-value: Delete nested properties from an object using dot notation. | homepage
Running tests
Install dev dependencies:
$ npm i -d && npm test
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Author
Jon Schlinkert
License
Copyright © 2015 Jon Schlinkert Released under the MIT license.
This file was generated by verb-cli on August 27, 2015.