Simple model for getting and setting values
var SimpleModel = require('simple-model');
var x = new SimpleModel();
x.on('change', function (prop, newVal, oldVal) {
console.log('change ' + prop + ' from ' + oldVal + ' to ' + newVal);
});
x.set('foo', 'bar');
// 'change foo from undefined to bar'
x.set('foo', 'baz');
// 'change foo from bar to baz'
x.get('foo');
// 'baz'
$ npm install simple-model
Create a new instance of a model
Set the value of prop
as value
Return the value of prop
Attach middleware for setting values
refer to attach-middleware for documentation
// resume from previous example
x.setMiddleware(function (prop, val, next) {
next(null, prop.replace(/ /g, '_'), 'val: ' + val);
});
x.set('foo bar', 'baz');
x.get('foo bar');
// undefined
x.get('foo_bar');
// 'val: baz'
Attach middleware for getting values
refer to attach-middleware for documentation
// resume from previous example
x.getMiddleware(function (prop, val, next) {
next(null, prop.replace(/ /g, '_'), 'getMiddleware: ' + val);
});
x.get('foo bar');
// 'getMiddleware: val: baz'
Listen for all changes on the model
Listen for a specific prop change on the model
- Getting values must be synchronous. Let me know if an asynchronous model is needed