Я попытался рассмотреть некоторые подобные вопросы здесь, в SO, но не смог найти способ решить мою проблему.Отдельная директива Scope Angular2
Существует обратный отсчет @Directive(), который принимает пару входов и отсчет. Работа с подсчетом работает, за исключением того, что я сталкиваюсь с проблемой, когда все селекторы запускают/излучают одни и те же номера, прежде чем переходить к следующему обратному отсчету. Как я могу получить их по отдельному обратному отсчету с использованием собственных параметров и одновременным запуском?
пробег (код) в app.component.ts
run() {
var _this = this;
clearInterval(_this._timer);
var counting = 0;
var incrementFactor = 0;
var increment = 1;
if (!isNaN(_this._duration) && !isNaN(_this._step) && !isNaN(_this._countFrom) && !isNaN(_this._countTo)) {
counting = Math.round(_this._countFrom);
incrementFactor = Math.round(Math.abs(_this._countTo - _this._countFrom)/((_this._duration * 1000)/_this._step));
increment = (incrementFactor < 1) ? 1 : incrementFactor
_this.countToChange.emit(counting);
_this._timer = setInterval(function() {
if (_this._countTo < _this._countFrom) {
if (counting <= _this._countTo) {
clearInterval(_this._timer);
_this.countToChange.emit(_this._countTo);
} else {
_this.countToChange.emit(counting);
counting -= increment;
}
}
}, _this._step);
}
}
AH Я просто derped. Теперь я понимаю. Я думал, что что-то не так с самой Директивой относительно эмитентов, но похоже, что я сохранял ее с той же переменной снова и снова. Спасибо за помощь! – Bryan