пытается получить доступ к дочернему элементу (является массивом) родительского интерфейса.
Но получая undefined
.
export class Address {
id: number;
city: string;
state: string;
}
import { Address } from './address';
export class User {
id: number;
name: string;
alladdresses: Address[];
}
в моем компоненте - объявление
users: User[] = [];
address: Address[] = [];
и мой http.get
равен
selectUser(user: User) {
let url = "http://localhost:8080/users/" + user.id
this.http.get<User>(url).subscribe(
res => {
//console.log(res);
this.selectedUser = res;
console.log('selected user is:', this.selectedUser);
},
error => {
console.log('error while getting user for ', user.id);
},
() => {
console.log('complete');
}
);
}
и ответ пользователя json:
здесь выбранный пользователь, которого я отображаю на странице, и некоторые действия на странице, вызывающие другую функцию для доступа к адресам - массив
createAddress() {
let newAddress: Address = {
id: null,
city: "new city",
state: "new state"
}
console.log(this.selectedUser)
let address: Address[] = this.selectedUser.alladdresses
//address.push(newAddress);
console.log(address);
}
Но массив не определен, а не там, где происходит ошибка.