html - 如何使用角度 5+ 的无限滚动?
问题描述
我正在关注本教程,但不确定它是否已过时。
我正在使用@angular/core": "^5.2.0"
所以我正在使用这个版本 ngx-infinite-scroll@0.8.3
我已经添加了:
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
并InfiniteScrollModule
在 app.module.ts 中导入。
在Search.component.ts
我添加了directives: [InfiniteScroll]
tp@Component
但当我通过选项卡浏览“ngx-infinite-scroll”中的选项时它似乎不再存在,我可以看到InfiniteScrollDirective
但没有实现它。
我可以让应用程序编译的唯一方法是摆脱directives: [InfiniteScroll]
但无限滚动不起作用(它只是一个普通滚动)。
html:
<div class="search-results"
infiniteScroll
[infiniteScrollDistance]="2"
[infiniteScrollThrottle]="50"
(scrolled)="onScroll()">
<div *ngFor="let name of ['a','a','b','e','r','t','t','e','b','e','r','t','ererer','a','a','b','e','r','t','t','e','b','e','r','t','ererer']">
<div>
{{name}}
</div>
</div>
</div>
CSS:
.search-results {
height: 100px;
overflow-y: scroll;
}
我的问题是什么可以实现无限滚动?
解决方案
你不需要directives: [InfiniteScroll]
。模块里面的 Import 就足够了。
关于滚动本身 - 您是否看到对您定义的函数的调用(onScroll()
)?
基本上,(scrolled)
只要包含指令的元素的一定百分比显示在视口中(默认情况下为 80%),该指令就会调用该函数。
例如,如果您有一个高度为 500px 的表格,那么当它的 400px 将进入视口(您在屏幕上看到的内容)时,将调用滚动函数。
推荐阅读
- python - 如何发送自定义帮助 PM
- mongodb - Mongodb 管理员无法访问
- c# - UWP 上的证书固定
- reactjs - 如何优化接收属性和重新渲染组件数组的应用程序?
- r - 创建不同字符串的新向量
- html - Flexbox 响应式导航栏 - justify-content : flex-end 不工作
- reactjs - Jest TypeError:redux action creator 不是函数
- java - 无法解决 Glide 4.1.1 中的 GlideApp
- android - 更改选项卡时隐藏搜索视图
- visual-studio-code - 如何在 VS Code 问题窗口中添加消息