Swiper: TypeError: невозможно прочитать свойство push of undefined или TypeError: classNames не определено

Я использую для своего проекта Swiper v4.5. Когда я открываю режим разработчика Chrome для просмотра своего проекта, возникает ошибка: Uncaught TypeError: Cannot read property 'push' of undefined. Я также попробовал Swiper v4.2, и результат тот же. Как мне исправить эту проблему?

Весь проект использует следующие js:

- modernizr.min.js
- jquery.min.js
- bootstrap.min.js
- swiper.min.js

Ошибка в Swiper:

suffixes.forEach(function (suffix) {
      classNames.push(params.containerModifierClass + suffix);
});

person Huang Liang-Syun    schedule 29.05.2019    source источник
comment
По-видимому, classNames не определено.   -  person JasonB    schedule 30.05.2019
comment
stackoverflow.com/help/minimal-reproducible-example   -  person JasonB    schedule 30.05.2019


Ответы (1)


Введение

Похоже, что новые версии Swiper полностью не подходят для использования в браузерах. У браузеров несовместимый JS. Похоже, вам нужно использовать какую-то старую версию Swiper.

Начиная с Swiper 5.3.6, swiper5


  suffixes.forEach((suffix) => {
    classNames.push(params.containerModifierClass + suffix);
  });
6/package/src/components/core/classes/addClasses.js имеет следующее:

export default function () {
  const swiper = this;
  const {
    classNames, params, rtl, $el,
  } = swiper;

[пропущено много строк]


  suffixes.forEach((suffix) => {
    classNames.push(params.containerModifierClass + suffix);
  });

Ответ

Известно, что Swiper для браузеров - это версия 3.3.1, которую мы используем в производстве для небольшого проекта. Наслаждаться!

person Eugene Gr. Philippov    schedule 28.05.2020