Angular在promise内部的发射不起作用
创始人
2024-10-30 20:30:50
0

问题描述: 在Angular中,当在Promise内部尝试发射事件时,事件似乎无法被触发。

解决方法: 要在Angular中的Promise内部发射事件,需要使用Angular的ChangeDetectorRef服务来手动触发变更检测。

以下是解决方法的代码示例:

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

@Component({
  selector: 'app-my-component',
  template: `
    
    
{{ result }}
` }) export class MyComponent implements OnInit { result: string; constructor(private cdRef: ChangeDetectorRef) {} ngOnInit() {} startAsyncTask() { this.result = 'Task started'; // 模拟异步任务 const promise = new Promise((resolve, reject) => { setTimeout(() => { this.result = 'Task completed'; // 手动触发变更检测 this.cdRef.detectChanges(); resolve(); }, 2000); }); // 可选:可以在任务完成后执行一些额外的逻辑 promise.then(() => { console.log('Task finished'); }); } }

在上面的代码中,我们使用了ChangeDetectorRef服务来手动触发变更检测。在Promise的resolve回调中,我们调用了this.cdRef.detectChanges()来通知Angular检查组件的变更。这将触发组件的重新渲染,并更新模板中的绑定。

请注意,ChangeDetectorRef服务必须在组件的构造函数中注入,并且不能在构造函数外部使用。这是因为ChangeDetectorRef是Angular内部的服务,它只能在组件的上下文中使用。

相关内容

热门资讯

外挂策略!约局吧能不能开挂,拱... 外挂策略!约局吧能不能开挂,拱趴大菠萝有挂吗-一直真的是有辅助教程(哔哩哔哩)1、点击下载安装,约局...
外挂讲义!线上德州的辅助器是什... 外挂讲义!线上德州的辅助器是什么,pokerrrr2辅助-一直是有辅助攻略(哔哩哔哩)1、每一步都需...
外挂总结!佛手大菠萝辅助,德普... 外挂总结!佛手大菠萝辅助,德普软件-切实一直都是有辅助软件(哔哩哔哩)佛手大菠萝辅助透视方法中分为三...
外挂要领!红龙poker辅助工... 外挂要领!红龙poker辅助工具,哈糖大菠萝辅助器-果然是有辅助方法(哔哩哔哩)1、上手简单,内置详...
外挂法门!agpoker辅助,... 外挂法门!agpoker辅助,werplan外卦神器-总是有辅助脚本(哔哩哔哩)1、玩家可以在wer...
外挂攻略!佛手在线大菠萝技巧,... 外挂攻略!佛手在线大菠萝技巧,德普之星透视辅助软件下载-原来真的有辅助app(哔哩哔哩)佛手在线大菠...
外挂教材!约局吧如何查看是否有... 外挂教材!约局吧如何查看是否有挂,werplan怎么透视-原来是真的有辅助app(哔哩哔哩)1、约局...
外挂策略!来玩app 德州 辅... 外挂策略!来玩app 德州 辅助,werplan辅助软件-本来一直总是有辅助方法(哔哩哔哩)1、游戏...
外挂总结!xpoker辅助,w... 外挂总结!xpoker辅助,werplan免费挂下载-果然真的有辅助攻略(哔哩哔哩)1、该软件可以轻...
外挂总结!智星菠萝德州辅助译码... 外挂总结!智星菠萝德州辅助译码插件靠谱吗,智星菠萝辅助-都是是有辅助方法(哔哩哔哩)1、这是跨平台的...