data
attach data to elements. think $.data().
Installation
$ component install yields/data
API
api = data(el)
Get new data api for the given element.
api.set(key[, val])
Merge the provided obj
or setkey
to val
.
data(el).set({ foo: 'bar' })
data(el).set({ bar: 'foo' });
data(el).get();
// > { foo: 'bar', bar: 'foo' }
api.get([key])
Get all data or a single value by key
,
if the key
does not exists it will be looked-up
in the element data-*
attributes, when found
it will be cached and then returned.
data(el).get('foo');
// > null
data(el).get();
// > {}
api.has(key)
Wether or not key
exists
data(el).set('foo', 'bar').has('foo');
// > true
api.del([key])
Delete all data or a single key
from cache.
data(el).del('some key');
data(el).del(); // everything!
api.cache
the element cache
api.el
the element.
add custom methods.
data.api.getUserAge = function () {
return this.cache.user
&& this.cache.user.age;
};
data(el).set({ user: { age: 99 } }).getUserAge();
// > 99
License
MIT