44 lines
		
	
	
		
			894 B
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			894 B
		
	
	
	
		
			Vue
		
	
	
| import '../assets/index.less'
 | |
| import Slider from '../src/slider'
 | |
| 
 | |
| export default {
 | |
|   data () {
 | |
|     return {
 | |
|       slides: [1, 2, 3, 4, 5, 6],
 | |
|     }
 | |
|   },
 | |
|   methods: {
 | |
|     click () {
 | |
|       this.slides = this.slides.length === 6 ? [1, 2, 3, 4, 5, 6, 7, 8, 9] : [1, 2, 3, 4, 5, 6]
 | |
|     },
 | |
|   },
 | |
|   render () {
 | |
|     const settings = {
 | |
|       props: {
 | |
|         dots: true,
 | |
|         infinite: true,
 | |
|         speed: 500,
 | |
|         slidesToShow: 3,
 | |
|         slidesToScroll: 3,
 | |
|       },
 | |
|     }
 | |
|     return (
 | |
|       <div>
 | |
|         <h2>Dynamic slides</h2>
 | |
|         <button class='button' onClick={this.click}>
 | |
|           Click to change slide count
 | |
|         </button>
 | |
|         <Slider {...settings}>
 | |
|           {this.slides.map(function (slide) {
 | |
|             return (
 | |
|               <div key={slide}>
 | |
|                 <h3>{slide}</h3>
 | |
|               </div>
 | |
|             )
 | |
|           })}
 | |
|         </Slider>
 | |
|       </div>
 | |
|     )
 | |
|   },
 | |
| }
 |