2016-08-29 28 views
10

tôi có một đối tượng để lưu trữ dữ liệu lưu trữ mà nên xem xét như thế này:Làm thế nào để xác định đối tượng của đối tượng gõ vào nguyên cảo

private data = { 
    'some_thing': new DataModel(), 
    'another_name': new DataModel() 
} 

Tôi đang cố gắng gán một đối tượng trống để nó trong constructor:

this.data = {}; // produces build error 

Về cơ bản, tôi cần phải xác định loại trường "dữ liệu" để nói rằng nó sẽ có khóa với tên ngẫu nhiên và giá trị của loại DataModel. Tôi đã cố gắng thực hiện điều này:

private data: Object<DataModel> 

Nhưng điều này không hợp lệ. Làm thế nào tôi sẽ chỉ định một loại chính xác?

Trả lời

34

Nó nên là:

private data: { [name: string]: DataModel }; 

Và sau đó điều này sẽ làm việc:

this.data = {}; 
+0

Làm việc - cảm ơn bạn! – marius

+0

Chúc các bạn tặng cho một triệu phiếu bầu! Cảm ơn bạn! – Encoder

Các vấn đề liên quan