因此,我正在开发一个TODO管理器,并且一直在使用Next.js13、Prisma和MySQL来实现同样的功能.为了添加删除待办事项的选项,我用Link
标记包装了删除按钮,如下所示:
...
<Link href={`/api/todo/${id}`}>
<MdDelete className="bg-red-400 hover:bg-red-600 p-1 text-3xl rounded-xl" />
</Link>
...
其中id
作为props 传递给组件./app/api/todo/[id]/route.ts
条如下:
import { prisma } from "@/lib/database";
import { NextResponse } from "next/server";
export async function DELETE(
req: Request,
{ params }: { params: { id: string } }
) {
await prisma.todo.delete({
where: {
id: params.id,
},
});
return NextResponse.json({ message: "done" });
}
但当按下链接时,它会转到URL http://localhost:3000/api/todo/clkgkh3t70000p1947hi24a3k
,并显示以下页面:
其中clkgkh3t70000p1947hi24a3k
是通过的id
.
这个问题有解决办法吗?或者,删除此待办事项的替代方案是什么?