На самом деле всё довольно просто. Можно пойти двумя путями:
1) Создать функцию внутри метода и вызывать её. Простой и удобный способ. Не захламляется класс и не нужно создавать никаких параметров для метода
slidesNavigation() {
// твой метод, в котором уже есть код
...
// заменяешь повторяющийся фрагмент на вызов функции
toggleDotClasses();
// функция, в которую завёрнут часто повторяющийся фрагмент
function toggleDotClasses() {
sliderDots[indexItemPrev].classList.remove('active');
indexItemPrev = indexItem;
sliderDots[indexItem].classList.add('active');
}
}
2) Создать новый метод в классе. Так стоит сделать, если есть как минимум подозрение, что этот твой метод может потребоваться в других методах кроме
slidesNavigation class PortfolioSlider {
...
// новый метод класса. нижнее подчеркивание намекает на то, что метод как бы приватный (служебный)
_toggleDotClasses(sliderDots, indexItemPrev, indexItem) {
sliderDots[indexItemPrev].classList.remove('active');
indexItemPrev = indexItem;
sliderDots[indexItem].classList.add('active');
}
slidesNavigation () {
this._toggleDotClasses(sliderDots, indexItemPrev, indexItem);
}
}
На мой взгляд лучше использовать первый вариант. В текущей реализации класса второй вариант не очень удобен