uniapp过滤器使用
创建一个过滤器:
在入口函数注册过滤器
// 注册过滤器
import * as filters from "./filters/index.js"Object.keys(filters).forEach(key=>{Vue.filter(key,filters[key])
})
使用过滤器:
onPageScroll
, uniapp监听滚动
钩子函数 onPageScroll
监听页面滚动高度,,,
uni.pageScrollTo({ scrollTop:130 })
: uniapp设置页面滚动高度
uniapp获取dom节点
// 在当前vue页面中查找
const query = uni.createSelectorQuery().in(this)query.selectAll(`.hot-list-item-${this.currentIndex}`).boundingClientRect((res)=>{// 这个res就是实际的dom节点}).exec()
swiper使用
swiper用到的方法:
- @animationfinish : swiper每次切换都会有一次切换动画,,这个是在swiper自身切换动画完成后,执行
- @change : 改变swiper执行的方法
swiper用到的属性:
- current: 当前swiper的序号,默认为0,,swiper默认展示序号为0的页面,,如果需要swiper展示其他序号页面,需要修改current属性
<swiper class="swiper" :current="currentIndex" :style="{height:currentSwiperHeight+'px'}"@animationfinish="onSwiperEnd"@change="onSwiperChange"><swiper-item v-for="(tabItem,tabIndex) in tabData">{{tabIndex}}<view><uni-load-more status="loading" v-if="isLoading"></uni-load-more><block v-else><hot-list-item v-for="(item,index) in listData[currentIndex]" :key="index":class="'hot-list-item-'+tabIndex":data="item":ranking="index+1"></hot-list-item></block></view></swiper-item></swiper>
用到的uniapp组件
- uni-load-more : loading加载
考虑的问题
- swiper 和 tab切换的联动
- tab点击跟随滑动
- swiper加载数据动态计算高度