有人可以向我解释为什么我无法在用户呼叫中访问zvol_name。
this.rest.get(this.volume_resource_name , {}).subscribe((res) => {
let zvol_name: Array<String>;
let zvol_object: Array<object>;
for(let zvol_list of res.data) {
zvol_name.push(zvol_list['vol_name']);
}
for(let j in zvol_name){
var result = this.rest.get(this.volume_resource_name+ '/' + zvol_name['vol_name'], {})
}
});
答案 0 :(得分:2)
这是因为行let zvol_name: Array<String>;
实际上并没有初始化数组。您的zvol_name
变量仍为undefined
。
在使用之前用空数组初始化它:
let zvol_name: Array<String> = [];
您可以在"strictNullChecks": true
文件中设置tsconfig.json
,以确保在编译期间捕获这些错误。