gpt4 book ai didi

Angular 5 : Module not found: Error: Can't resolve '@angular/forms/src/validators'

转载 作者:太空狗 更新时间:2023-10-29 17:51:32 25 4
gpt4 key购买 nike

我正在尝试使用指令创建自定义验证器,但出现以下错误。

ERROR in ./src/app/CustomValidators/white-space-validator.directive.ts
Module not found: Error: Can't resolve '@angular/forms/src/validators' in 'D:\Angular\Admin\src\app\CustomValidators'
resolve '@angular/forms/src/validators' in 'D:\Angular\Admin\src\app\CustomValidators'
Parsed request is a module
using description file: D:\Angular\Admin\package.json (relative path: ./src/app/CustomValidators)
Field 'browser' doesn't contain a valid alias configuration
after using description file: D:\Angular\Admin\package.json (relative path: ./src/app/CustomValidators)
resolve as module.....

指令文件中的代码:

import { Directive } from '@angular/core';
import { ValidatorFn, Validator } from '@angular/forms/src/directives/validators';
import { AbstractControl, FormControl } from '@angular/forms/src/model';
import { NG_VALIDATORS } from '@angular/forms/src/validators';

@Directive({
selector: '[whiteSpace][ngModel]',
providers: [
{ provide: NG_VALIDATORS, useExisting: WhiteSpaceValidatorDirective, multi: true }
]
})

export class WhiteSpaceValidatorDirective {
validator : ValidatorFn;

constructor() {
this.validator = checkWhiteSpaces();
}

validate(c: FormControl){
return this.validator(c);
}
}

function checkWhiteSpaces(): ValidatorFn {
return (c: AbstractControl) => {
let isValid = c.value.trim().length > 0 ? true : false;
if (isValid) {
return null;
}
else {
return {
whiteSpace: { valid: false }
}
}
}
}

我使用的包版本:

  • Angular CLI: 1.5.5 Node: 8.2.1 OS: win32 x64 Angular: 5.1.2 ... animations, common, compiler, compiler-cli, core, forms ... http,
    language-service, platform-browser ... platform-browser-dynamic,
    router @angular/cli: 1.5.5 @angular-devkit/build-optimizer: 0.0.36 @angular-devkit/core: 0.0.22 @angular-devkit/schematics: 0.0.42
    @ngtools/json-schema: 1.1.0 @ngtools/webpack: 1.8.5
    @schematics/angular: 0.1.11 @schematics/schematics: 0.0.11
    typescript: 2.4.2 webpack: 3.8.1

有什么帮助吗?

最佳答案

只从@angular/forms导入

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

关于 Angular 5 : Module not found: Error: Can't resolve '@angular/forms/src/validators' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48294516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com