Tôi đang cố gắng để thiết lập một tiểu hữu first
được định nghĩa trong giao diện Name
nhưng khi làm như vậy tôi luôn luôn nhận được một lỗi ví dụ:Trong nguyên cảo làm thế nào để khắc phục không thể đặt thuộc tính 'đầu tiên' không xác định
interface Name{
first: string,
last:string,
}
class Person{
private name:Name
public setName(firstName, lastName){
this.name.first = firstName;
this.name.last = lastName;
}
}
var person1 = new Person();
person1.setName('Tracy','Herrera');
Khi chạy nó tôi gặp lỗi: Cannot set property 'first' of undefined
Có ai có ý tưởng làm việc này không?
Cảm ơn phản ứng nhanh, nhưng vấn đề với điều này là tôi có một vật thể rất lớn và làm theo cách đó khiến nó không thể đọc được dễ dàng khi chỉ có hai. bất kỳ đề xuất? –
điều này là tuyệt vời, nhưng điều này sẽ làm việc tốt khi bạn có một đối tượng cấp duy nhất, nhưng khi đối tượng quá sâu như 'var info = {name: {first:" someName ", cuối cùng:" someLastName "}}' Tôi cần để init mỗi cấp độ như 'info.name = {}' và sau đó gán 'first' và' last' –