Передать по параметру класс с утверждением типа - Typescript - PullRequest
0 голосов
/ 27 ноября 2018

Я имитирую множественное наследование в машинописи следующим образом:

export const FileManager = superClass => class extends superClass {
    //...
}

export declare abstract class Model<T extends Model<T>>{
//...
}

Я попробовал следующее, а затем он говорит, что FileManager ожидал 1 параметр вместо 2.

export class Order extends FileManager(Model<Order>)){
//...
}

Поэтому я изменил определение FileManager на:

export const FileManager = (superClass,t) => class extends superClass<t> {
    //...
}

Но затем я получаю эту ошибку:

[ts] Значение типа 'typeof Model' не вызывается.Вы хотели включить 'new'?

Это работало хорошо, прежде чем мне нужно было объявить утверждение типа для класса модели (его необходимо, я не могу удалить его).Я думаю, проблема в том, как я получаю typeof в качестве параметра и как динамически создавать его экземпляры.

Я действительно застрял, я буду очень благодарен за любую помощь

...