Comments (2)
Hi @evanzio,
not sure if it's still relevant for you, but I stumbled over the same problem of holding the activeIndex
in the normal react state. My attempt looks like this:
import React from 'react';
import Swiper from 'react-id-swiper';
class Foo extends React.Component {
constructor(props) {
super(props);
this.state = {
swiper: null,
activeSlideIndex: null,
};
this.swiperRef = this.swiperRef.bind(this);
}
swiperRef(ref) {
this.setState({ swiper: ref.swiper });
}
render() {
const swiperParams = {
slidesPerView: 'auto',
centeredSlides: true,
slideToClickedSlide: true,
on: {
slideChangeTransitionStart:
() => this.state.swiper && this.setState({ activeSlideIndex: this.state.swiper.activeIndex }),
},
};
return (
<div>
<span>{this.state.activeSlideIndex}</span>
<Swiper {...swiperParams} ref={this.swiperRef}>
{this.props.slides.map(slide => (
<div>{slide.value}</div>
))}
</Swiper>
</div>
);
}
};
from react-id-swiper.
Hi @evanzio , thank you for your report. Currently, it's impossible to setState in swiper callback function, because every time new state change it will re-render the Swiper component . That why u receive the error Uncaught TypeError: Cannot read property 'emitterEventListeners' of null
. Instead of putting in the same component, I recommend you to separate the swiper and <p>Current Active Index: {this.state.activeIndex}</p>
in two component. If you use some state library management like Redux or Mobx, you can put the action method to update state inside the swiper callback function. Thanks :)
from react-id-swiper.
Related Issues (20)
- keyboard not working properly on Safari
- Question: Controlled swiper HOT 3
- How to get the Current Index of the Slider ? HOT 6
- LazyLoading not working
- breakpoints not working HOT 1
- import swiper not working HOT 9
- No rtl support HOT 3
- How to get/create instance after destroyed swiper? HOT 1
- react router reload page after loop image
- Vertical Mode is not working properly HOT 1
- The examples codesandboxes are very confusing HOT 2
- Module not found: Can't resolve 'react-id-swiper/src' in 'C:\Users\cheta\React-applications\landing-page\src\components'
- How to make autoplay this swiper
- Module not found: Error: Package path ./css/swiper.css is not exported from package C:\Users\Lenovo\Documents\programacion\portfolio\portfolio\node_modules\swiper (see exports field in C:\Users\Lenovo\Documents\programacion\portfolio\portfolio\node_modules\swiper\package.json) HOT 2
- Two-way Control not working
- How to use pagination arrows outside the swiper wrapper?
- How can I create Infinite Slider ?
- slidesOffsetAfter δΈηζ
- Error in Next 13 / App
- Getting Error while using with next v13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-id-swiper.