视图层:
<scroll-view scroll-x="true" class="nav" scroll-with-animation :scroll-left="scrollLeft">
<view class="cu-item" :class="index==curr?'text-green cur':''" v-for="(item,index) in cateList" :key="index" @tap="tabSelect" :data-id="index" :data-cate_id="item.category_id">
{{item.category_name}}
</view>
</scroll-view>
逻辑层:
data() {
return {
scrollLeft: 0,
}
},
onShow() {
this.scrollLeft=240;
console.log(this.scrollLeft)
uni.$on('tabSelect', this.tabSelect); //加载监听事件
},
methods: {
//切换分类
tabSelect(e) {
this.curr = e.currentTarget.dataset.id;
this.scrollLeft = (e.currentTarget.dataset.id - 1) * 60;
console.log(this.scrollLeft)
},
}
正常点击可以将相应的选项滚动到视图内,但从别的页面跳过来时,在onShow里给scrollLeft赋值就不成功!
0 个回复