/**
* 顶部header
*/
Vue.component("carousel-tesedangjian", {
template: `
`,
props: {
// list:{
// type:Array
// },
height:{
type:Number
},
width:{
type:Number
},
data:{
type:Array
}
},
data() {
return {
interval:undefined,
left:0,
direction:'left',
forData:[],
arrowLeft: -30,
arrowRight:-30,
dataList:[]
}
},
mounted(){
this.init()
},
methods: {
init(){
this.dataList=this.data.map(item=>item.url)
this.forData = this.data
this.interval = setInterval(this.timer, 3000);
},
carouselMouseover(){
this.arrowLeft =10
this.arrowRight =10
clearInterval(this.interval);
},
carouselMouseout(){
this.arrowLeft = -30
this.arrowRight =-30
this.direction = 'left'
this.interval=setInterval(this.timer,3000);
},
clickCtrl(direction){
this.direction = direction
this.timer()
},
timer(){
if(this.direction == 'left'){
this.left = this.left - this.width
if(this.left == -((this.forData.length) * this.width)){
this.left = 0
}
}else{
if(this.left == 0){
this.left = -((this.forData.length-1) * this.width)
}else {
this.left = this.left + this.width
}
}
},
},
watch:{
data: function (n,o) {
this.init()
}
},
})