mframejs
Version:
simple framework
34 lines • 1.35 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var classArrayObserverCreator_1 = require("./classArrayObserverCreator");
var ArrayObserverHandler = (function () {
function ArrayObserverHandler(expression, listener) {
this.expression = expression;
this.listener = listener;
this.expression = expression;
this.listener = listener;
}
ArrayObserverHandler.prototype.bind = function (context) {
this.observing = true;
this.context = context;
classArrayObserverCreator_1.ClassArrayObserverCreator.create(this.context, this.expression, this);
};
ArrayObserverHandler.prototype.update = function (data) {
if (this.listener) {
this.listener.call(data);
}
this.bind(this.context);
};
ArrayObserverHandler.prototype.unbind = function () {
if (this.observing) {
classArrayObserverCreator_1.ClassArrayObserverCreator.remove(this.context, this.expression, this);
}
this.listener.caller = null;
this.listener = null;
this.observing = false;
this.context = null;
this.expression = null;
};
return ArrayObserverHandler;
}());
exports.ArrayObserverHandler = ArrayObserverHandler;
//# sourceMappingURL=arrayObserverHandler.js.map