Для правильного вопроса надо знать половину ответа
Где-то у вас указано имя каталога vsRep, где-то vsrep.
Предупреждение просто говорит о том, что в системах с разным подходом к регистрозависимости имён файлов/каталогов это может быть как один и тот же путь, так и разные пути.
Приведите всё к одному виду.
Для правильного вопроса надо знать половину ответа
Либо по старинке отслеживать событие scroll и вычислять положение нужного блока на экране, либо использовать Intersection Observer и смотреть момент пересечения нужного блока с вьюпортом.
Для правильного вопроса надо знать половину ответа
Надо либо навешивать обработчик на конкретный элемент при его создании (а не на все элементы каждый раз), либо вешать его на родительский статичный элемент и использовать всплытие.
Для правильного вопроса надо знать половину ответа
Потому что вы добавляете в selectedContactValues числа, а ищете в нём строку.
indexOf использует строгое сравнение, ничего не находит и, соответственно, выдаёт -1.
splice, в свою очередь, получив -1 удаляет первый с конца элемент массива.
Для правильного вопроса надо знать половину ответа
[123, 321, 213]
.sort((a, b) => b - a)
.reduce(
(acc, cur) => acc.replace(`${cur}`, `${cur * 2}`),
"привет, это, новый, массив, 123, в, котором, есть, цифры, 321, и, 213",
);
// "привет, это, новый, массив, 246, в, котором, есть, цифры, 642, и, 426"
Для правильного вопроса надо знать половину ответа
Подключайте как миксин
const Eventable = (Base) => class extends Base {
// Здесь ваши общие свойства и методы для событий
};
const Popup = Eventable(
class {
// Здесь основная часть класса
},
);
или
class Popup extends Eventable(
class {
// Здесь основная часть класса
},
) { };