10、Remix 中的数据获取与变更

Remix 中的数据获取与变更

1. 参数化路由中获取动态数据

在更新了费用概览页面后,之前硬编码的费用详情路由可能会出现问题。我们需要修复这个问题,更新代码以根据路由参数从数据库中查询所需的费用信息。具体步骤如下:
1. 打开 /app/routes/dashboard.expenses.$id.tsx 文件,该文件已经使用了 loader 函数来渲染模拟数据。
2. 删除文件中的模拟数据数组。
3. 更新 loader 函数,使其根据 URL 中的 id 参数从数据库中查询唯一的费用对象:

import { db } from '~/modules/db.server';
export async function loader({ params }: LoaderFunctionArgs) {
    const { id } = params;
    const expense = await db.expense.findUnique({ where: { id } });
    if (!expense) throw new Response('Not found', { status: 404 });
    return json(expense);
}

此代码会调用数据库动态查询正确的费用信息。若未找到匹配 id 参数的费用,会抛出 404 响应。
4. 在终端执行 np

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值