Response Helpers

revalidate

编辑此页面

重新验证将接收一个缓存键或一个缓存键数组,并使这些查询失效。

下面的代码将使用缓存键重新验证 getTodo 查询。

"/actions/update-todo.ts"{4}
import { action, revalidate } from "@solidjs/router";
const updateTodo = action(async (todo: Todo) => {
await putTodo(todo.id, todo);
return revalidate(getTodo.keyFor());
});

要更好地理解查询的工作原理,请查看 query 文档。


强制重新验证

revalidate 函数还接受第二个参数来强制重新验证缓存数据。

"/actions/update-todo.ts"{4}
import { action, revalidate } from "@solidjs/router";
const updateTodo = action(async (todo: Todo) => {
await putTodo(todo.id, todo);
return revalidate(getTodo.keyFor(), true);
});

TypeScript 类型签名

function revalidate(
key?: string | string[] | void,
force?: boolean
): Promise<void>;
报告此页面问题