小技巧,对查询结果进行分页操作
-
你只需要一个可以为你计算范围的函数。我有一个我创建的函数,效果非常好,你可以在你的代码中使用它。
export const getPagination = (page, size) => { const limit = size ? +size : 3; const from = page ? page * limit : 0; const to = page ? from + size : size; return { from, to }; };
你可以在你的查询之前添加这个,并使用返回的from和to作为你的.range属性。
export async function getServerSideProps({ query: { page = 1 } }) { const { from, to } = getPagination(page, 10); const { data, count } = await supabase .from("cars") .select("*", { count: "exact" }) .order("id", { ascending: true }) .range(from, to); return { props: { data: data, count: count, page: +page, }, }; }