我想在表单验证功能中使用服务。
我有一个服务文件:
import { Injectable } from '@angular/core';
import { Apollo } from 'apollo-angular';
@Injectable()
export class AuthService {
constructor(private apollo: Apollo) {}
test() {
return "test"
}
}
和验证器函数的文件
import { AbstractControl } from '@angular/forms';
import { of } from 'rxjs/observable/of';
import { AuthService } from './../../auth/services/auth.service'
export function UsernameValidator(control: AbstractControl) {
let test = AuthService.test(control.value)
if (test !== "test") {
return of(null)
} else {
return of( { validName: { message: "username cannot be test" } })
}
}
我的问题是,验证器功能不知道服务,因此说
类型'typeof AuthService'
上不存在属性'test'
有人可以向我解释一下,如何使验证器功能了解服务或如何注入服务或正确实例化它?