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内部的服务,它只能在组件的上下文中使用。

相关内容

热门资讯

透视中牌率!wepoker透视... 透视中牌率!wepoker透视脚本苹果,越乡游义乌辅助器下载,AA德州教程(有挂神器)1、点击下载安...
推荐一款!wpk辅助透视,德扑... 推荐一款!wpk辅助透视,德扑ai智能机器人,科技教程(固有真的是有挂)1、在德扑ai智能机器人ai...
透视肯定!hhpoker透视脚... 透视肯定!hhpoker透视脚本,超级三加一辅助下载,解密教程(有挂技巧),支持语音通讯、好友开房及...
玩家必备科技!weopke真的... 玩家必备科技!weopke真的吗,德州之星插件,安装教程(一向有挂)1)德州之星插件辅助挂:进一步探...
透视规律!hhpoker辅助下... 1、透视规律!hhpoker辅助下载,佛手在线大菠萝的算法是什么,解密教程(有挂透明)。2、佛手在线...
重磅来袭!wepoke开发者,... 重磅来袭!wepoke开发者,德扑之星猫腻,教你教程(从来真的有挂);是一款可以让一直输的玩家,快速...
透视真的!wpk有没有脚本,点... 透视真的!wpk有没有脚本,点我达辅助,揭秘教程(有挂技巧);1.点我达辅助 ai辅助创建新账号,点...
分享开挂内幕!微扑克规律吗,a... 分享开挂内幕!微扑克规律吗,aapoker辅助工具,玩家教你(果然真的有挂)1、在aapoker辅助...
透视科技!wpk透视辅助软件,... 透视科技!wpk透视辅助软件,皮皮跑胡子有没有挂,第三方教程(有挂软件)是由北京得皮皮跑胡子有没有挂...
查到实测辅助!微扑克ai辅助器... 查到实测辅助!微扑克ai辅助器苹果版,wpk有外挂,详细教程(原先是真的有挂)1)微扑克ai辅助器苹...