Более красивая TypeScript анонимная декларация класса? Есть ли более прекрасный способ выразить анонимный класс (?) с типизированными членами в typeScript чем это? class Foo { member = { aNumber = <number>undefined; aBoolean = <bool>undefined; } } Ответ 1 Единственная анонимная альтернатива: class Foo { member: { aNumber?: number; aBoolean?: bool; } = { aNumber: undefined, aBoolean: undefined } } Обычно вам лучше писать interface, чтобы вы могли назвать тип. Ответ 2 Поскольку члены undefined по умолчанию, вы можете просто пойти с: class Foo { member:{aNumber:number;aBoolean:bool;} = <any>{}; } Ответ 3 В новых версиях typescript это может быть достигнуто с использованием дополнительных свойств: class Foo { member: { aNumber?: number; aBoolean?: boolean; } = {} }
Ответ 1 Единственная анонимная альтернатива: class Foo { member: { aNumber?: number; aBoolean?: bool; } = { aNumber: undefined, aBoolean: undefined } } Обычно вам лучше писать interface, чтобы вы могли назвать тип.
Ответ 2 Поскольку члены undefined по умолчанию, вы можете просто пойти с: class Foo { member:{aNumber:number;aBoolean:bool;} = <any>{}; }
Ответ 3 В новых версиях typescript это может быть достигнуто с использованием дополнительных свойств: class Foo { member: { aNumber?: number; aBoolean?: boolean; } = {} }