В чем разница между typeof SchemaTypes.ObjectId и Types.ObjectId? - PullRequest
0 голосов
/ 21 января 2020

В моем проекте TypeScript у меня есть следующий файл:

import { SchemaTypes } from 'mongoose';

export interface IIdentifier {
  _id: typeof SchemaTypes.ObjectId;
}

Все наши модели баз данных расширяют интерфейс IIdentifier. Первоначальный кодировщик этого файла покинул компанию, и я не могу связаться с ним, но зачем кому-то объявлять _id таким образом, а не так:

import { Types } from 'mongoose';

export interface IIdentifier {
  _id: Types.ObjectId;
}

Нет никакой разницы при компиляции и запуске два файла (ни остальной части проекта) при использовании любого из двух решений. Так в чем же разница и почему кто-то должен использовать один над другим?

...