Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

286
Views
react swiper js not render if virtual is true

I use swiper.js in my react component.If I don't use virtual in swiper, everything is going well, but when I use Virtual, the slider does not render. I deleted the extra codes so that it is not crowded.

import { Swiper, SwiperSlide } from 'swiper/react';
import SwiperCore, { Keyboard, Virtual } from 'swiper';
import 'swiper/swiper.scss';

SwiperCore.use([Virtual, Keyboard]);

...
return (
 <div className="selected-image-detail__container">
  <div className="selected-image-detail__inner-container">
    <div className="image-detail__header">
      <Close onClick={handleCloseModal}/>
    </div>
    {!loading && !isEmpty(results) && isValidIndex(getImagePosition(results, urlParams.imgrc)) ? (
    <Swiper
      ref={swiper}
      key={selectedImageData?.image_id}
      enabled={isFeatureEnabled('image.swiper')}
      keyboard={{
        enabled: true,
      }}
      preloadImages={true}
      modules={[ Virtual ]} // If i comment this line it is ok
      virtual               // If i comment this line it is ok 
      initialSlide={getImagePosition(!RI? results: related_images.related, selectedImageData?.image_id)}
      spaceBetween={7}
      slidesPerView={1}
      onTransitionEnd={handleChangeSlide}
      onSlideChange={() => setIsSliding(true)}
    >
      {results.map((image, index) => {
        return(
        <SwiperSlide key={image.image_id} virtualIndex={image.image_id}>
              <div className="selected__image__details__container">
                  <SelectedImageCard
                    image={image}
                    setIsReportModalOpen={setIsReportModalOpen}
                    selectedIndex={index}
                    isSliding={isSliding}
                  />                 
              </div>
        </SwiperSlide>

      )})}
    </Swiper>
    ) :
      (
        <div className="selected__image__details__container">
                  <SelectedImageCard
                    image={selectedImageData}
                    setIsReportModalOpen={setIsReportModalOpen}
                    selectedIndex={getImagePosition(!RI? results: related_images.related, selectedImageData?.image_id)}
                    isSliding={isSliding}
                  />
                  {relatedImageLoading && <CircularLoader />}
                  {!relatedImageLoading && _renderRelatedImages(selectedImageData)}
        </div>
      )
    }      
  </div>
 </div>
);

React and Swiper versions:

"react": "^17.0.2",
"swiper": "^6.7.1",

Help me please . I tried every way but it didn't work

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!