c# - 在 Blazor 中加载一个大列表
问题描述
我想在我有信号器连接并且请求获取所有学生的那一刻加载学生列表。我想向下滚动列表,它会一次加载 100 名学生?
<ul>
@if (Students != null)
{
@foreach (var student in Students)
{
<li>
<div class="treeview__item__header">
@plan.Name
</div>
</li>
}
}
</ul>
@code
{
private List<StudentsData> Students { get; set; }
protected override async Task OnInitializedAsync()
{
Students = await StudentsConnection.GetStudents();
}
}
解决方案
我已经成功地使用了这个例子:
https://github.com/amuste/DnetVirtualScrolling
或者,正如亚历山大所说,一个简单的寻呼机计算要显示的行数,似乎是最好的“纯 blazor”解决方案
编辑:看起来 Virtualize 可能非常适合这种用途:
https://www.syncfusion.com/blogs/post/asp-net-core-blazor-component-virtualization-in-net-5.aspx
推荐阅读
- java - @RequestMapping 没有正确映射
- php - 如何仅获取自定义帖子类型的术语或分类法
- node.js - 合并两个具有单独 package.json 文件的 node_modules 文件夹
- javascript - 将散景图放入 VueJS 问题
- sql-server - SQL Server 更改日期格式以接受 d/m/y
- notepad++ - 有没有办法永久关闭记事本++上的覆盖?
- python - 尝试使用 PyPy v7.3.1 安装 Numpy,围绕构建轮子的错误
- javascript - 浏览器是否支持对 id 命名的 html 元素的全局引用?
- java - Gradle Multi-Module 项目从子模块中调用常见任务
- encryption - 如何加密 ActiveMQ Artemis 中的静态数据?