思路:首先找到你选中的元素,然后开始第一次执行任务代码,最后开始继续迭代
代码:
//this.cameras是一个数组
let iter = this.cameras[Symbol.iterator]()
while(iter.next().value.cameraId === id){//id为你选中元素的id,目的是当你找到你选中的那个开始第一次执行任务代码,然后跳出while循环
this.$refs.HKWS.getCameraInfo(id)//任务代码
break; //跳出while循环
}
// 循环播放 设置定时器 继续往下完成你的迭代循环
var intervalInst = setInterval(
() => {
// 迭代
var ref = iter.next()
// 未完成的迭代
if (!ref.done) {
//任务代码
// 激活摄像头
// this.$refs.ocx.shut()
this.$refs.HKWS.stopPreview()
// this.$refs.ocx.play(ref.value.camera)
this.$refs.HKWS.getCameraInfo(ref.value.cameraId)
// 点亮图标
this.changeUse({ target: { tagName: 'IMG', id: ref.value.cameraId } })
} else {
// 完成的迭代,重建迭代器
iter = this.cameras[Symbol.iterator]()
}
}, this.inputInterval*1000)
ok,打完收工