мне нужно иметь массив классов, а затем иметь возможность перебрать этот массив и получить доступ к этим классам stratic свойства:доступа статическое свойство из массива Params
class Blah{
static type: string = "blah";
}
class Foo{
blahs: Array<{new(): Blah}>
go(){
this.blahs.map(function(blah){
console.log(blah.type);
})
}
}
этот пример приведет к ошибке:
Property 'type' does not exist on type
new()=>Blah
Мне нужно, чтобы он был массивом, поскольку все эти классы являются классами для компонентов для игрового объекта, и каждый объект может иметь различный набор компонентов, но только один компонент каждого типа. Поэтому я делаю тип статическим свойством, чтобы проверить, добавлен ли такой компонент в игровой объект, не создавая экземпляр этого класса компонента.
так как я могу переписать этот код?
thanx для вас ответ. У меня будет куча классов, унаследованных от Blah с различным значением 'type', и в любой момент времени я не буду иметь никаких знаний о том, какие классы находятся в массиве' blahs', поэтому я не могу использовать ни один из ваших вариантов. – SET
«Блахи» - это не массив. Мы можем сказать его модуль с определенными в нем классами. Если вы можете получить ссылку на нее - вам не нужно знать какие-либо сведения о ней и код будет работать. – Amid
Мне нужно, чтобы он был массивом, поскольку все эти классы являются классами для компонентов для игрового объекта, и каждый объект может иметь различный набор компонентов, но только один компонент каждого типа. Поэтому я делаю тип статическим свойством, чтобы проверить, добавлен ли такой компонент в игровой объект, не создавая экземпляр этого класса компонента. – SET