Интерфейс Typescript и вопросы возврата Promise - PullRequest
0 голосов
/ 27 января 2020

Может кто-нибудь объяснить мне необходимость интерфейса? из того, что я понимаю, это требование к моей схеме иметь 3 поля, если сделан экземпляр. Будет ли сделать требование: правда; в моей схеме значат одно и то же?

   

 import { Schema, model, Document } from "mongoose";

    const schema = new Schema({
      title: String,
      description: String,
      imagePath: String
    });

    export interface IPhoto extends Document {
      title: string;
      description: string;
      imagePath: string;
    }

    export default model<IPhoto>("Photo", schema);

Зачем мне нужно приводить результат объекта после удаления?

также я не понимаю, как работает модель ("имя", схема) вообще ..: (

const photo = (await Photo.findByIdAndRemove(id)) as IPhoto;

Число 1 и номер 2 работают одинаково, указание типа возврата функции должно быть только более конкретным c и избежать каких-либо ошибок? есть ли другие причины для выполнения:: Promise "?

   

//number 1
    async function stuff(req: Request, res: Response): Promise<Response>{}


    //vs

   //number 2
    async function stuff(req: Request, res: Response){}
...