angular - Angular 2/4/5/6 如何获取对象属性
问题描述
我有一个 api 调用,但是我似乎在检索对象中的属性时遇到了问题。
step.component.ts
ngOnInit(){
this.stepService.getSteps().subscribe(appconfig => {
console.log(appconfig); //this returns me an object
console.log(appconfig.isstepcontactdisabled); // this gives me undefined
}
}
step.service.ts
getSteps(): Observable<Step> {
return this.http.get<Step>(appConfig.apiBasePath + "appconfig").pipe(
catchError(this.handleError),
);
}
步骤.ts
export interface Step {
appconfig: Appconfig;
}
export interface Appconfig {
isstepcontactdisabled: boolean;
isstepdevicebranddisabled: boolean;
issteppaymentinfodisabled: boolean;
isstepservicetypedisabled: boolean;
}
这是我的结果(step.component.ts 中的 console.log,我越来越不确定)
我尝试使用 appconfig.isstepcontactdisabled 和 appconfig["isstepcontactdisabled"] 获取该属性,但它仍然显示为未定义。有人可以启发我吗?感谢你的帮助!
解决方案
您需要使用appconfig.appconfig.isstepcontactdisabled
, 或appconfig['appconfig']['isstepcontactdisabled']
.
该对象有点嵌套,因此您可能错过了该appconfig
属性。
尝试运行console.log(appconfig.appconfig.isstepcontactdisabled)
它!
推荐阅读
- java - 如果我将类的实例变量与对象进行比较,它将比较什么?
- android - 如何仅从 android 中的网页 url 获取图像
- sql - 使用行号的 PostgreSQL 百分比变化
- django - Django React Image 不会显示
- python - Django Allauth facebook 登录错误“应用程序未使用安全连接传输信息”
- python - 如何为我的班级实例设置一组特定的打印指令?
- python - Python Pandas - 根据值的某些条件选择多级索引
- javascript - 如何在 chart.js 中捕获过滤器选择事件
- python - 在python中将3个字典合并为一个
- swift - Firebase 中的 updateData 函数无法识别文档字段