Angular虚拟滚动在添加/删除列表项时不重新渲染列表
创始人
2024-10-30 10:31:07
0

这个问题可以通过触发Angular的变更检测器来解决。在添加/删除列表项后,调用ChangeDetectorRefdetectChanges()方法可以强制Angular重新渲染组件。 以下是一个示例组件,该组件使用虚拟滚动来显示一个无限滚动列表,并在用户点击按钮时添加(或删除)新的元素。注意detectChanges()的调用方式:

import { Component, ChangeDetectorRef } from '@angular/core';

@Component({
  selector: 'app-infinite-scroll',
  template: `
    
{{ item }}
` }) export class InfiniteScrollComponent { items = Array.from({ length: 100 }).map((_, i) => `Item #${i}`); constructor(private cdr: ChangeDetectorRef) {} add() { this.items.push(`Item #${this.items.length}`); this.cdr.detectChanges(); } remove() { this.items.pop(); this.cdr.detectChanges(); } }

在上面的代码中,InfiniteScrollComponent包含一个无限滚动列表,其中数据存储在items数组中。当用户点击“添加”按钮时,add()方法向列表中添加一个新元素,并调用ChangeDetectorRefdetectChanges()方法来刷新组件。同样,当用户点击“删除”按钮时,remove()方法会从列表中删除最后一个元素,并调用detectChanges()方法。这将强制Angular重新渲染组件,使我们能够看到新添加/删除的列表项。

相关内容

热门资讯

透视真的!aapoker插件(... 透视真的!aapoker插件(透视)ai插件(总是真的有挂);1、构建自己的aapoker插件辅助插...
透视中牌率!aapoker发牌... 透视中牌率!aapoker发牌逻辑(透视)脚本(本来有挂)1、aapoker发牌逻辑ai机器人多个强...
透视好友房!aapoker脚本... 透视好友房!aapoker脚本怎么用(透视)辅助插件工具(确实存在有挂)1、玩家可以在aapoker...
透视最新!aapoker脚本怎... 透视最新!aapoker脚本怎么用(透视)真的假的(好像真的有挂)1、aapoker脚本怎么用机器人...
透视美元局!aapoker透视... 透视美元局!aapoker透视脚本入口(透视)辅助(确实是有挂)1、在aapoker透视脚本入口ai...
透视私人局!aapoker真的... 透视私人局!aapoker真的假的(透视)脚本(竟然真的是有挂)在进入aapoker真的假的辅助挂后...
透视苹果版!aapoker辅助... 透视苹果版!aapoker辅助器怎么用(透视)发牌逻辑(确实是真的有挂);该软件可以轻松地帮助玩家将...
透视讲解!aapoker透视插... 透视讲解!aapoker透视插件(透视)插件(本来有挂)1、透视讲解!aapoker透视插件(透视)...
透视脚本!aapoker破解侠... 透视脚本!aapoker破解侠是真的吗(透视)辅助(原来是真的有挂)1、起透看视 aapoker破解...
透视智能ai!aapoker脚... 透视智能ai!aapoker脚本怎么用(透视)万能辅助器(总是存在有挂)1、点击下载安装,aapok...