【发布时间】:2019-10-27 17:00:53
【问题描述】:
我需要在 Angular 7 中创建自定义验证。
写下这段代码:
CheckUserNameExisit(control: AbstractControl): { [key: string]: any } {
console.log('in functions')
return new Promise(resolve => {
let httpClient: HttpClient;
var userService = new UserService(httpClient);
let usernameExist: Usernameexist;
usernameExist = userService.InitialUserNameExist();
usernameExist.UserName = control.value;
console.log(usernameExist.UserName)
userService.checkUsername(usernameExist)
.subscribe(data => {
if (data.success == false) {
console.log(data.success)
resolve({ 'usernameExists': false });
} else {
console.log(true)
resolve(null);
}
});
});
}
这是UserSerivce:
checkUsername(item: Usernameexist): Observable<GenericModel<Usermodel>> {
console.log('go')
return this.httpClient.post<GenericModel<Usermodel>>('https://localhost:44372/api/v1/User/FindbyName/', item);
}
但是当我需要使用此验证时,它会显示此错误:
错误错误:未捕获(承诺中):TypeError:无法读取未定义的属性“帖子” TypeError:无法读取未定义的属性“帖子” 在 UserService.push../src/app/services/user.service.ts.UserService.checkUsername
有什么问题吗?我该如何解决这个问题??
【问题讨论】:
-
这里出了很多问题。不要误会,但我建议先深入阅读 javascript/typescript,然后阅读 angular.io 中列出的指南,然后阅读有关 rxjs 的内容,然后开始你的第一个真正的项目
标签: javascript angular typescript angular7