@bitalikrr

Не могу понять что значит такая запись?

Начинаю изучать typeScript

наткнулся на такой код и никак не могу нагуглить как его понять

// Need to declare the static model so `findOne` etc. use correct types.
type MyModelStatic = typeof Model & {
  new (values?: object, options?: BuildOptions): MyModel;
}

Код взять из документации sequelize

Конкретно не понимаю что значит знак &
Почему там typeof
И что за екзампляр создается тут new (values?: object, options?: BuildOptions)

Можно просто сказать темы которые посмотреть , или там ссылку что почитать,

Только убедительная просьба не писать коментари по типу "гугли" "много тем есть"
Если нет желания помочь просто пройдите мимо
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
Конкретно не понимаю что значит знак &

Intersection Types
Почему там typeof

Потому что Model это объект, от которого мы получаем тип в контексте объявления типа, а typeof Model здесь - это type query expression. Если непонятно почему тут можно использовать typeof, вот великолепное объяснение, а вот ссылка на спецификацию языка.
И что за екзампляр создается тут new (values?: object, options?: BuildOptions)

https://stackoverflow.com/a/39623422/3927447 - это значит что если у вас есть объект типа MyModelStatic, вы можете сделать так: new MyModelStatic(values, options), это construct signature. Обратите внимание как именно используется в моём примере объект MyModelStatic.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы