MongoDB 和 Mongoose 可以直接与 Bun 配合使用。本指南假设您已安装 MongoDB,并将其作为开发机器上的后台进程/服务运行。有关详细信息,请遵循 本指南。
MongoDB 运行后,创建一个目录并使用 bun init
对其进行初始化。
mkdir mongoose-app
cd mongoose-app
bun init
然后将 Mongoose 添加为依赖项。
bun add mongoose
在 schema.ts
中,我们将声明并导出一个简单的 Animal
模型。
import * as mongoose from 'mongoose';
const animalSchema = new mongoose.Schema(
{
name: {type: String, required: true},
sound: {type: String, required: true},
},
{
methods: {
speak() {
console.log(`${this.sound}!`);
},
},
}
);
export type Animal = mongoose.InferSchemaType<typeof animalSchema>;
export const Animal = mongoose.model('Animal', animalSchema);
现在,我们可以从 index.ts
导入 Animal
,连接到 MongoDB,并将一些数据添加到我们的数据库中。
import * as mongoose from 'mongoose';
import {Animal} from './schema';
// connect to database
await mongoose.connect('mongodb://127.0.0.1:27017/mongoose-app');
// create new Animal
const cow = new Animal({
name: 'Cow',
sound: 'Moo',
});
await cow.save(); // saves to the database
// read all Animals
const animals = await Animal.find();
animals[0].speak(); // logs "Moo!"
// disconnect
await mongoose.disconnect();
让我们使用 bun run
运行它。
bun run index.ts
Moo!