在Angular2和Typescript滚动中使用lodash去抖动不起作用

前端之家收集整理的这篇文章主要介绍了在Angular2和Typescript滚动中使用lodash去抖动不起作用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下代码调用lodash去抖功能

@HostListener("window:scroll",[])
onWindowScroll() {
    if (myBoolean) 
       _.debounce(this.onScrollDown(),1500,false);

    }
}

private onScrollDown() {
    console.log("onScrollDown")
}

但我在我的控制台中收到此错误

Argument of type 'void' is not assignable to parameter of type 'Function'.

以下是浏览器:

TypeError: Expected a function
    at Function.debounce

顺便说一句,我正在使用打字稿

解决方法

我不熟悉lodash,但我认为你想要的是:

private debouncedOnScroll = _.debounce(() => this.onScrollDown(),{});

@HostListener("window:scroll",[])
onWindowScroll() {
    this.debouncedOnScroll();
}

private onScrollDown() {
    console.log("onScrollDown")
}

猜你在找的Angularjs相关文章