@@ -148,32 +148,26 @@ export default class Slider extends React.Component {
148
148
return ! ! child ;
149
149
} ) ;
150
150
151
+ let rows = settings . rows || 1 ;
152
+ let slidesPerRow = settings . slidesPerRow || 1 ;
153
+ let variableWidth = settings . variableWidth || false ;
154
+
151
155
// rows and slidesPerRow logic is handled here
152
- if (
153
- settings . variableWidth &&
154
- ( settings . rows > 1 || settings . slidesPerRow > 1 )
155
- ) {
156
+ if ( variableWidth && ( rows > 1 || slidesPerRow > 1 ) ) {
156
157
console . warn (
157
158
`variableWidth is not supported in case of rows > 1 or slidesPerRow > 1`
158
159
) ;
160
+ variableWidth = false ;
159
161
settings . variableWidth = false ;
160
162
}
161
163
let newChildren = [ ] ;
162
164
let currentWidth = null ;
163
- for (
164
- let i = 0 ;
165
- i < children . length ;
166
- i += settings . rows * settings . slidesPerRow
167
- ) {
165
+ for ( let i = 0 ; i < children . length ; i += rows * slidesPerRow ) {
168
166
let newSlide = [ ] ;
169
- for (
170
- let j = i ;
171
- j < i + settings . rows * settings . slidesPerRow ;
172
- j += settings . slidesPerRow
173
- ) {
167
+ for ( let j = i ; j < i + rows * slidesPerRow ; j += slidesPerRow ) {
174
168
let row = [ ] ;
175
- for ( let k = j ; k < j + settings . slidesPerRow ; k += 1 ) {
176
- if ( settings . variableWidth && children [ k ] . props . style ) {
169
+ for ( let k = j ; k < j + slidesPerRow ; k += 1 ) {
170
+ if ( variableWidth && children [ k ] . props . style ) {
177
171
currentWidth = children [ k ] . props . style . width ;
178
172
}
179
173
if ( k >= children . length ) break ;
@@ -182,15 +176,15 @@ export default class Slider extends React.Component {
182
176
key : 100 * i + 10 * j + k ,
183
177
tabIndex : - 1 ,
184
178
style : {
185
- width : `${ 100 / settings . slidesPerRow } %` ,
179
+ width : `${ 100 / slidesPerRow } %` ,
186
180
display : "inline-block"
187
181
}
188
182
} )
189
183
) ;
190
184
}
191
185
newSlide . push ( < div key = { 10 * i + j } > { row } </ div > ) ;
192
186
}
193
- if ( settings . variableWidth ) {
187
+ if ( variableWidth ) {
194
188
newChildren . push (
195
189
< div key = { i } style = { { width : currentWidth } } >
196
190
{ newSlide }
0 commit comments