效果图如下:
vuejs 无限滚动
下载安装 vue-seamless-scroll
npm install vue-seamless-scroll --save
引入注册(全局)main.js
import scroll from 'vue-seamless-scroll'
Vue.use(scroll)
组件或者页面中使用
<template>
<div>
<vue-seamless-scroll :data='comment_dish_list' :class-option="optionHover" class="eval_ul">
<div class="eval_li" v-for="(i,v) in comment_dish_list" :key="v">
<div class="eval_li_left">
<div class="imgsss">
<img class="avatar" :src="i.avatar"/>
</div>
</div>
<div class="eval_li_mid">
<span>
<i style="margin-left: 0;">{{ i.uname }}</i>
<i style="margin-left: 20rem;">{{ i.hall_dept_name }}</i>
<em>{{ i.add_time }}</em>
</span>
<p>{{ i.content }}</p>
</div>
<div class="eval_li_right">
<div class="star">
<i v-for="k,v in i.score" :key="v"></i>
</div>
<span>
{{ i.score }}<em>分</em>
</span>
</div>
</div>
</vue-seamless-scroll>
</div>
</template>
<script>
export default{
data(){
return{
comment_dish_list:[]//请求的数据
}
},
computed: {
optionHover() {
return {
step: 1, // 数值越大速度滚动越快
limitMoveNum: 2, // 开始无缝滚动的数据量 this.dataList.length
hoverStop: true, // 是否开启鼠标悬停stop
direction: 1, // 0向下 1向上 2向左 3向右
openWatch: true, // 开启数据实时监控刷新dom
singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
};
},
}
</script>