supermall项目相关知识点总结

本文总结了在Vue项目中使用Better-Scroll实现滚动功能,包括监听滚动、上拉加载和防止频繁刷新。同时,介绍了如何处理图片加载后更新滚动区域的问题,以及实现吸顶效果的步骤。此外,讨论了时间戳转换、Fastclick解决移动端延迟、Vue-lazyload图片懒加载、px2vw单位转换、nginx部署和Vue响应式原理等关键知识点。
摘要由CSDN通过智能技术生成

1.原生js实现局部滚动功能:
在这里插入图片描述
在这里插入图片描述
2.Better-Scroll的用法:
- 在index.html中使用Better-Scroll:
* 监听滚动:probeType: 0 / 1 / 2 / 3
bscroll.on(‘scroll’,(position)=>{})
* 上拉加载:pullUpLoad:true
bscroll.on(‘pullingUp’,()=>{})
* click:false button 可以监听点击
div 等其他元素不可以
click:true 必须要设置
在这里插入图片描述
在这里插入图片描述
- 在Vue项目中使用 Better-Scroll:
*
- 解决首页中 Better-Scroll 可滚动区域的问题:
* Better-Scroll 在决定有多少区域可以滚动时,是根据 ScrollerHeight 属性决定的;
* ScrollerHeight 属性是根据放在 Better-Scroll 的 content 中的子组件的高度;
* 但是我们的首页中,刚开始在计算ScrollerHeight 属性时,是没有将图片计算在内的;
* 所以,计算出来的结果是错误的(1300+);
* 后来图片加载进来之后有了新的高度,但是ScrollerHeight 属性并没有进行更新,
* 所以滚动出现了问题;
如何解决问题?
* 监听每一张图片是否加载完成,只要有一张图片加载完成了,执行一次 refresh();
如何监听图片加载完成了?
* 原生的 js 监听图片:img.οnlοad=function(){}
* Vue中监听:@load=‘方法名’
* 调用 scroll 的 refresh()

  • 如何将 GoodsListItem.vue 中的事件传入到 Home.vue 中?
    * 因为涉及到非父子组件的通信,所以这里我们选择了 事件总线
    * bus —> 总线
    * Vue.prototype. b u s = n e w V u e ( ) − − − − > m a i n . j s 中 ∗ t h i s . bus=new Vue() ----> main.js 中 * this. bus=newVue()>main.js
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值