drizzle 连接数据库 - ReinerLau/rtc-player GitHub Wiki

前置

连接

utils/db/db.ts(名字随意)

import { drizzle } from "drizzle-orm/better-sqlite3";
import Database from "better-sqlite3";

const sqlite = new Database("sqlite.db");
export const db = drizzle(sqlite);

接口

server/api/video.ts

import { defineEventHandler } from "#imports";
import { db } from "~/utils/db";
import { videos } from "~/utils/db/schema";

export default defineEventHandler(() => {
  return db.select().from(videos).all();
});

请求

const { data } = await useFetch("/api/video");

注意组合式函数都是建议在 script 标签的根作用域下执行的,不是在函数或者生命周期中,如果需要在可以使用 $fetch 代替

onMounted(async () => {
  const data = await $fetch("/api/video", {
    method: "GET",
  });
});

参考