Мне нравится использовать listenSwiper для захвата свайпов, сделанных в модуле swiper, изменяя предыдущий и следующий элементы стиля текущего элемента.
listenSwiper: function(e) {
var prev = 'items['+(e.detail.current-1)+'].x'
var now = 'items['+(e.detail.current)+'].x'
var next = 'items['+(e.detail.current+1)+'].x'
console.log(prev)
console.log(now)
console.log(next)
this.setData({
prev:12,
now:0,
next:-12,
})
},
Проблема заключается в том, что вместо того, чтобы распознавать prev
, now
и next
как переменные, setData обрабатывает их как строки, что означает, что он добавляет три новых ключа в существующий массив вместо изменения массива как такового:
this.setData({
'items[0].x':12,
'items[1].x':0,
'items[2].x':-12,
})