Angular 角度:类型错误:无法读取属性';toLowerCase';未定义的
我的问题是,当我使用http.post方法时,它会给我一个错误“TypeError:无法读取未定义的属性'toLowerCase'。有什么问题?我尝试将Angular降级到8.0.0版,但没有成功 我的登录服务:Angular 角度:类型错误:无法读取属性';toLowerCase';未定义的,angular,typescript,Angular,Typescript,我的问题是,当我使用http.post方法时,它会给我一个错误“TypeError:无法读取未定义的属性'toLowerCase'。有什么问题?我尝试将Angular降级到8.0.0版,但没有成功 我的登录服务: login(model: any) { return this.http.post(this.baseUrl, model) .pipe(map((response: any) => { const user = response; if
login(model: any)
{
return this.http.post(this.baseUrl, model)
.pipe(map((response: any) => {
const user = response;
if(user){
localStorage.setItem('token', user);
}
}));
}
组件中的我的登录方法:
login(){
this.authService.login(this.model)
.subscribe(next =>{
console.log('You have been logged in');
},err => {
console.log(err);
});
}
我认为您的问题在于
baseUrl
声明。您可能正在定义它,但不是设置值而是设置类型。请记住,:
设置一个类型和=
一个值,您可能知道这一点,但我将其保留为将来的参考。因此,您的代码中可能有类似的内容:
private baseUrl: 'http://localhost:3000/';
如果我输入console.logbaseUrl的
类型,我当然会得到未定义:
console.log(typeof this.usersUrl);
// returns undefined
如果我console.logbaseUrl
获取其值,我们将再次得到未定义:
console.log(this.usersUrl);
// returns undefined
检查示例
如果是这种情况,只需修复baseUrl
的声明并将字符串设置为值:
private baseUrl: string = 'http://localhost:3000/';
关于错误为何指向小写方法的一些见解
您得到
TypeError:无法读取未定义“
错误”的属性“toLowerCase”,因为angular正在尝试将字符串baseUrl
转换为所有小写(以防万一)使用本机方法时,由于它实际上没有在代码中正确定义,因此baseUrl既没有定义,也没有字符串,因此会抛出错误。我认为您的问题在于baseUrl
声明。您可能正在定义它,但不是设置值而是设置类型。请记住:
设置类型和=
a值,您可能知道这一点,但我将其保留下来供将来参考。因此,您的代码中可能有类似的内容:
private baseUrl: 'http://localhost:3000/';
如果我输入console.logbaseUrl的
类型,我当然会得到未定义:
console.log(typeof this.usersUrl);
// returns undefined
如果我console.logbaseUrl
获取其值,我们将再次得到未定义:
console.log(this.usersUrl);
// returns undefined
检查示例
如果是这种情况,只需修复baseUrl
的声明并将字符串设置为值:
private baseUrl: string = 'http://localhost:3000/';
关于错误为何指向小写方法的一些见解
您将获得
TypeError:无法读取未定义“
错误”的属性“toLowerCase”,因为angular正在尝试使用本机方法将字符串baseUrl
转换为所有小写(以防万一),并且由于它实际上没有在代码中正确定义,因此baseUrl既没有定义,也不是字符串,因此抛出错误。有人否决了您的投票,因为该问题需要编辑。尝试不发布带有代码的图像,并将所有相关代码放入问题中。。。错误指向toLowercase(),但该方法不在代码中:),但我没有创建类似的方法this@Lucas这是对的。张贴您的服务代码。你在责怪成功日志,但这是你的服务功能的问题。好的,我已经编辑了我的问题。你没有正确解释问题,请明确指出问题。由于问题需要编辑,有人否决了你。尝试不发布带有代码的图像,并将所有相关代码放入问题中。。。错误指向toLowercase(),但该方法不在代码中:),但我没有创建类似的方法this@Lucas这是对的。张贴您的服务代码。你在责怪成功日志,但这是你的服务功能的问题。好的,我已经编辑了我的问题。你没有正确解释问题,请清楚地指出问题