Angular中的detectChanges()不会触发ngDoCheck()
创始人
2024-10-31 03:30:52
0次

使用 markForCheck() 方法代替 detectChanges() 方法。这种情况通常发生在组件使用了 OnPush 变更检测策略时。

示例代码:

@Component({ selector: 'app-example', templateUrl: './example.component.html', changeDetection: ChangeDetectionStrategy.OnPush }) export class ExampleComponent implements OnInit, DoCheck {

@Input() data: any;

constructor(private cdr: ChangeDetectorRef) { }

ngOnInit() { }

ngDoCheck() { console.log('ngDoCheck() called'); // 这条语句永远不会被执行 }

updateData() { // this.cdr.detectChanges(); // 不会触发 ngDoCheck() this.cdr.markForCheck(); // 会触发 ngDoCheck() }

}

在上面的代码中,使用了 OnPush 变更检测策略,同时实现了 DoCheck 接口。当调用 updateData() 方法时,使用了 markForCheck() 方法来通知 Angular 组件需要检测更新,这会触发 ngDoCheck() 方法的执行。相反,如果使用 detectChanges() 方法,ngDoCheck() 不会被调用。

相关内容

热门资讯

盘点几款辅助技巧!廊坊麻将多功... 盘点几款辅助技巧!廊坊麻将多功能辅助技巧,廊坊麻将真是是真的有辅助技巧1、廊坊麻将公共底牌简单,廊坊...
重大来袭透视器脚本!边锋cr在... 重大来袭透视器脚本!边锋cr在线多功能透视器脚本,边锋cr在线原来有透视器脚本1、每一步都需要思考,...
2024教程作弊器工具!抚顺麻... 2024教程作弊器工具!抚顺麻将多功能作弊器工具,抚顺麻将一直存在有作弊器工具1、抚顺麻将有没有辅助...
教程辅助作弊器工具!吉祥麻将多... 教程辅助作弊器工具!吉祥麻将多功能作弊器工具,吉祥麻将原来是真的有作弊器工具吉祥麻将脚本下载中分为三...
总算清楚透视挂方法!悟空竞技麻... 总算清楚透视挂方法!悟空竞技麻将多功能透视挂方法,悟空竞技麻将竟然是真的有透视挂方法;1、全新机制【...
揭秘关于作弊器插件!趣玩齐齐哈... 揭秘关于作弊器插件!趣玩齐齐哈尔多功能作弊器插件,趣玩齐齐哈尔切实真的是有作弊器插件1、这是跨平台的...
盘点一款开挂方法!边锋老友棋牌... 盘点一款开挂方法!边锋老友棋牌多功能开挂方法,边锋老友棋牌其实是真的有开挂方法边锋老友棋牌能透视中分...
专业讨论辅助工具!悠悠广东麻将... 专业讨论辅助工具!悠悠广东麻将多功能辅助工具,悠悠广东麻将都是真的有辅助工具1)悠悠广东麻将有没有挂...
如何分辨真伪作弊器软件!打哈儿... 如何分辨真伪作弊器软件!打哈儿麻将多功能作弊器软件,打哈儿麻将切实存在有作弊器软件;1、实时打哈儿麻...
详细说明外挂攻略!家乡鹤游多功... 详细说明外挂攻略!家乡鹤游多功能外挂攻略,家乡鹤游其实真的是有外挂攻略1、金币登录送、破产送、升级送...