我可以在不使用 Next 应用程序路由器的 fetch 的情况下标记数据访问以进行手动缓存重新验证吗?

问题描述 投票:0回答:1

我想在 Next 项目中使用应用程序路由器实现重新验证端点,所以我认为我的选择是

revalidatePath
revalidateTag

我想要重新验证的数据访问与第三方库一起使用,该库从 CMS 请求资源,而无需直接调用 fetch,我还将该操作放置在 React 缓存函数中。

我可以在 Next 中创建一个 api 来保存数据访问,然后通过从组件中获取来调用 api,以利用与 Next 中的 fetch 捆绑在一起的

tag
选项,但我想避免公开公共 api这个操作。

我可以在 Next 中标记手动重新验证缓存的 React 函数吗?一般来说,有没有一种方法可以标记数据访问操作,而不是传递标记选项来获取?

reactjs next.js memoization react-server-components react-cache
1个回答
0
投票

经过更多测试后,我意识到使用 React.cache 缓存的函数不会在数据缓存级别进行记忆,该函数仍然会针对每个请求运行(一次)(即使调用多次)。

我猜缓存数据访问操作的唯一方法是将其粘贴到下一个 api 中......

© www.soinside.com 2019 - 2024. All rights reserved.