Angular 6错误:ValidatorFn期望返回一个Promise
创始人
2024-10-16 07:00:30
0

在Angular 6中,您可以使用asyncawait关键字来解决ValidatorFn期望返回一个Promise的错误。

下面是一个示例代码,演示了如何在Angular 6中使用asyncawait来解决此问题:

import { AbstractControl, ValidatorFn } from '@angular/forms';

function asyncValidator(): ValidatorFn {
  return async (control: AbstractControl) => {
    const value = control.value;

    // 模拟异步操作
    await new Promise(resolve => setTimeout(resolve, 2000));

    if (value === 'foo') {
      return { asyncValidation: true };
    }

    return null;
  };
}

在上面的代码中,我们创建了一个名为asyncValidator的函数,它返回一个ValidatorFn。该ValidatorFn实际上是一个异步函数,它接受一个AbstractControl参数,并返回一个Promise

在函数体内,我们可以使用await关键字来等待一个异步操作的完成。在这个例子中,我们使用setTimeout来模拟一个异步操作,等待2秒钟。

然后,我们根据控件的值进行验证,并根据需要返回一个验证错误对象或null

请注意,在使用异步验证器时,您需要将asyncValidator函数应用于表单控件。例如,在模板驱动表单中,您可以使用ngModel指令:


Invalid value

在上面的代码中,我们将asyncValidator应用于ngModelOptions指令中的validators属性,以便在验证时调用异步验证器。

最后,我们使用*ngIf指令来显示验证错误消息,如果name控件的asyncValidation属性为true

这样,您就可以在Angular 6中使用asyncawait来解决ValidatorFn期望返回一个Promise的错误。

相关内容

热门资讯

wepoker模拟器哪个!we... wepoker模拟器哪个!we poker游戏下(透视)神器-本来揭露真的有挂1、金币登录送、破产送...
透视详细!xpoker辅助(透... 透视详细!xpoker辅助(透视)hhpoker底牌透视脚本,教程办法(真是有挂)-哔哩哔哩1、下载...
拱趴大菠萝有什么挂!wpk透视... 拱趴大菠萝有什么挂!wpk透视工作室(透视)脚本-真是分享真的是有挂1、拱趴大菠萝有什么挂有没有辅助...
透视透视!hhpoker有没有... 透视透视!hhpoker有没有透视挂(透视)德州hhpoker是真的吗,教程绝活儿(有挂教程)-哔哩...
红龙poker辅助工具!wep... 红龙poker辅助工具!wepoker模拟器哪个好用(透视)神器-其实透视真的有挂1、游戏颠覆性的策...
透视教你!wepoker透视有... 透视教你!wepoker透视有用吗(透视)智星菠萝透视,教程阶段(有挂方式)-哔哩哔哩1、很好的工具...
大菠萝手游辅助!德普之星透视辅... 大菠萝手游辅助!德普之星透视辅助软件下载(透视)脚本-其实解迷是真的挂1、任何德普之星透视辅助软件下...
透视有挂!wpk有辅助器吗(透... 透视有挂!wpk有辅助器吗(透视)wepoker私局辅助,教程方针(有挂技术)-哔哩哔哩1、wepo...
菠萝辅助器免费版的特点!hhp... 菠萝辅助器免费版的特点!hhpkoer辅助挂是真的吗(透视)脚本-原来开挂是有挂1、菠萝辅助器免费版...
透视揭幕!wepoker亲友圈... 透视揭幕!wepoker亲友圈有用吗(透视)wepoker辅助器如何使用,教程诀窍(有挂透明挂)-哔...