为了开发LDAP浏览器,我需要显示大树。第一级是位置,第二级包含数百个元素。因此需要延迟加载以避免极长的页面加载。
通过扩展位置,加载/解析所有元素也需要很长时间。所以我希望通过Websockets转移每个元素来进行增量构建。我想实时显示它:发送child1,显示child1。然后发送child2,显示child2等。
为了更清楚,我创建了一个简单的小提琴,用于演示目的:https://jsfiddle.net/wj13Ly73/
let number = 0
setInterval(() => {
$('#second-level').append(`<li>OU=Test${++number}</li>`);
}, 300);
目标是用户看到第一个元素,而不是在加载所有内容之前看不到任何内容。 问题:我找不到像这样构建子节点的任何Angular兼容组件。尽管很多像angular-tree-component或ng2-tree支持延迟加载,但他们无法像这样显示进度。
相反,他们一次获取所有子项并稍后再渲染它们。这具有所描述的副作用,即在加载/解析所有结果之前用户没有看到任何结果,这是我不想要的。
我正在使用角度5.2。