首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏草根专栏

    用VSCode开发一个asp.net core 2.0+angular 5项目(4): Angular5全局错误处理

    Angular就使用了这个库, 在它之上建立了ngZone这个模块. 就这样angular在发生异步操作后进行到了变化检测. 使用ngZone: import { ErrorHandler, Injectable, Injector, Inject, NgZone } from '@angular/core'; import : NgZone ) { } private get toastr(): ToastrService { return this.injector.get(ToastrService ); } handleError(error: any): void { this.ngZone.run(() => { this.toastr.error 最后修改app.error-handler.ts: import { ErrorHandler, Injectable, Injector, Inject, NgZone } from '@angular

    2K50发布于 2018-03-29
  • 来自专栏全栈修仙之路

    Angular 异常处理

    options.ngZone : undefined; const ngZone = getNgZone(ngZoneOption); const providers: StaticProvider [] = [{provide: NgZone, useValue: ngZone}]; return ngZone.run(() => { const ngZoneInjector _modules, moduleRef)); ngZone !.runOutsideAngular( () => ngZone !. 在获取 ErrorHandler 对象之后,通过调用 ngZone !.runOutsideAngular() 方法,启用异常处理器: ngZone !. runOutsideAngular( () => ngZone !.

    1.7K20发布于 2019-11-05
  • 来自专栏Angular&服务

    angular2出现值变化没有立即更新到ui上

    解决方法 import { Component, OnInit,NgZone } from '@angular/core'; @Component({ selector: 'app-home', home.component.scss'] }) export class HomeComponent implements OnInit { querys = 2323; constructor(private ngzone :NgZone) { } ngOnInit() { } set() { this.ngzone.run(() => { this.querys = 5;

    51730发布于 2018-08-20
  • 来自专栏网络日志

    Angular 服务器端渲染应用一个常见的内存泄漏问题

    考虑如下的 Angular 代码: import { Injectable, NgZone } from "@angular/core"; import { interval } from "rxjs" ; @Injectable() export class LocationService { constructor(ngZone: NgZone) { ngZone.runOutsideAngular 退订 subscription 的技巧有很多,下面是一个例子: import { Injectable, NgZone, OnDestroy } from "@angular/core"; import export class LocationService implements OnDestroy { private subscription: Subscription; constructor(ngZone : NgZone) { this.subscription = ngZone.runOutsideAngular(() => interval(1000).subscribe(()

    55810编辑于 2024-08-01
  • 来自专栏WindCoder

    Angular6自定义表单控件方式集成Editormd

    this.host.nativeElement.id, this.editormdConfig); // 创建编辑器 } updateValue(value: string) { this.ngZone.run multi: true }; 最终代码 EditorMdComponent import { Component, ViewChild, Input, AfterViewInit, ElementRef, NgZone ) => { }; onTouched: Function = () => { }; constructor( private el: ElementRef, private ngZone : NgZone ) { } ngAfterViewInit(): void { this.init(); } ngOnDestroy(): void { this.destroy this.host.nativeElement.id, this.editormdConfig); // 创建编辑器 } updateValue(value: string) { this.ngZone.run

    6.4K20发布于 2018-09-19
  • 来自专栏随想

    Angular路由实现原理

    值得一提的是这个NgZone。 之前做过一个前端获取ip的需求,封装的getUserIP方法入参是一个回调函数,我在回调函数里调用navigate调用失败,后面也是通过设置ngZone.run()来解决的,这下原理终于搞清楚了,原来是执行上下文的问题

    1.4K10编辑于 2023-05-31
  • 来自专栏全栈程序员必看

    angular5面试题_大数据面试题

    对于setTimeout,addEventListener、promise等都在ngZone中执行(换句话说,就是被zone.js封装重写了),angular并在ngZone中setup了相应的钩子,通知

    6.4K20编辑于 2022-11-02
  • 来自专栏前端开发

    Angular 应用性能调优:从全链路监控到 Performance Budget 的闭环实践

    NgZone.runOutsideAngular — 对无需 UI 更新的长轮询、WebSocket 心跳使用 runOutsideAngular 运行,避免误触发全局变更检测。

    29300编辑于 2025-06-27
  • 来自专栏IMWeb前端团队

    Change Detection And Batch Update

    class ApplicationRef { changeDetectorRefs:ChangeDetectorRef[] = []; constructor(private zone: NgZone } tick() { this.changeDetectorRefs .forEach((ref) => ref.detectChanges()); } } ngZone

    4.7K40发布于 2019-12-05
  • 来自专栏IMWeb前端团队

    Change Detection And Batch Update

    class ApplicationRef { changeDetectorRefs:ChangeDetectorRef[] = []; constructor(private zone: NgZone } tick() { this.changeDetectorRefs .forEach((ref) => ref.detectChanges()); } } ngZone

    5K70发布于 2018-01-08
  • 来自专栏前端布道

    Angular开发实践(五):深入解析变化监测

    这个时机是由 NgZone 这个服务去掌控的,它获取到了整个应用的执行上下文,能够对相关的异步事件发生、完成或者异常等进行捕获,然后驱动 Angular 的变化监测机制执行。

    2.4K80发布于 2018-04-11
  • 来自专栏腾讯IMWeb前端团队

    实战 | Change Detection And Batch Update

    Angular2更新机制大体如下: ngZone是对Zone.js的服务封装,Angular2会在每个task执行结束后触发更新。

    4.9K20编辑于 2022-06-29
  • 来自专栏京程一灯

    Angular 5.0.0发布!

    若要绕过它,启动应用时加上 noop: platformBrowserDynamic().bootstrapModule(AppModule, {ngZone: 'noop'}).then( ref =

    6.1K40发布于 2019-03-27
  • 来自专栏程序员成长指北

    基于 qiankun 的微前端最佳实践(万字长文) - 从 0 到 1 篇

    完整代码实现如下: // micro-app-angular/src/main.single-spa.ts import { enableProdMode, NgZone } from "@angular getSingleSpaExtraProviders()).bootstrapModule( AppModule ); }, template: "<app-root />", Router, NgZone

    8.9K41发布于 2020-12-17
  • 来自专栏全栈程序员必看

    【17】进大厂必须掌握的面试题-50个Angular面试

    NgZone.prototype.run():它将对整个组件树执行更改检测。在这里,引擎盖下的run()将调用tick本身,然后参数将在tick之前获取函数并执行它。

    46K51发布于 2021-04-07
领券