2020-04-20项目一些小问题(二)

对于refresh刷新太频繁,使用防抖操作

    debounce (func,delay=100){
        let timer = null;
        return function(...args) {
          if(timer) clearTimeout(timer)
          timer = setTimeout(() => {
            func.apply(this,args)
          },delay)
        }
      }
 // 使用防抖请求
      const pullLoadMore = debounce(this.$refs.scroll.refresh, 50)
      this.$bus.$on('imageLoad',() => {
        pullLoadMore()
      })

每次图片加载完成都会调用pullLoadMore函数,相当于调用function(...args) {这个匿名函数,然后每次清除定时器,创建新的延迟定时器,直到超过这个延迟,在这个延迟期间中没有重置定时器,就执行func函数,

所有的组件对象都有一个属性:$el 用于获取组件中的元素

保留滚动的位置用
activated() {
},
deactivated() {
},
方法

ES6创建对象

export class person {
  constructor(name,age,height) {
    this.name = name
    this.age = age
    this.height = height
  }
}
使用:
const p = new person("sl",18,100)

判断是否是空数组
Object.keys(p).length == 0
带数据的判断是
v-if="Object.keys(titles).length != 0"

this.$nextTick和updated()函数进行dom加载之后的获取高度位置、
updated() 调用会比较频繁

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,431评论 0 3
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,630评论 0 7
  • 文章首发于个人博客 前言 使用vue的时候经常会遇到一些问题,其实仔细阅读查阅官方文档,就会发现文档中已提到一些格...
    IOneStar阅读 4,931评论 1 28
  • Vue知识点的总结 Vue中的指令及其基本语法: 第一步:从官网上下载vue开发版本的js文件 引入js文件 ...
    往前走莫回头_2cd6阅读 1,499评论 0 1
  • 没有想到,在长隆飞鸟乐园,能够看到那么多有特色的鸟儿,简直是不虚此行。 谢谢友人,拿我当小朋友一样招待,我很喜欢。...
    青萍之末_f5bf阅读 1,804评论 1 1