refactor: es6 getter/setter

This commit is contained in:
cha0s 2019-03-22 11:24:50 -05:00
parent 3c09ab3f82
commit af373189a6

View File

@ -52,7 +52,7 @@ export function PropertyMixin(key, meta = {}) {
metaDefault = JSON.parse(JSON.stringify(meta.default));
}
class Property extends Superclass {
return class Property extends Superclass {
constructor(...args) {
super(...args);
@ -61,22 +61,18 @@ export function PropertyMixin(key, meta = {}) {
}
}
}
Object.defineProperty(Property.prototype, key, {
enumerable: true,
get: function() {
get [key]() {
return meta.get.call(this);
},
set: function (value) {
}
set [key](value) {
const old = meta.get.call(this);
meta.set.call(this, value);
if (meta.track && meta.emit && !meta.eq.call(this, old, value)) {
meta.emit.call(this, `${key}Changed`, old, value);
}
},
});
}
return Property;
}
}
}