Typescript 错误代码:2366,函数缺少结束返回语句且返回类型不包括“未定义”

Jon*_*dez 4 javascript mongodb typescript server typescript-generics

我目前正在研究我的项目的服务器/数据库。目前它由 Javascript、Typescript、MongoDB、Apollo-Server 和 Express 组成。上面的错误不断出现,我不知道如何解决。这是我的数据库文件夹的 index.ts 文件中的代码。

import { MongoClient } from "mongodb";
import { Database, Listing, Booking, User } from '../lib/types';


const url = `mongodb+srv://${process.env.DB_USER}:${process.env.DB_USER_PASSWORD}@${process.env.DB_CLUSTER}.mongodb.net`;

export const connectDatabase = async (): Promise<Database> => {
  try {
    const client = await MongoClient.connect(url, { useNewUrlParser: true, useUnifiedTopology: true });
    const db = client.db("main");

    return {
      bookings: db.collection<Booking>("bookings"),
      listings: db.collection<Listing>("listings"),
      users: db.collection<User>("users"),
    };
  } catch (error) {
    console.log(error);
  }
};
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激。

Ste*_*hen 5

您捕获了错误,但您没有从函数中返回任何内容。这就是它抱怨的原因。要么删除 try/catch 并处理调用此函数的函数中的错误,要么返回一些可用的内容给调用者。