我无法理解如何在remix.run中替换getserversideprops。如果我在外部组件中使用loaderFunction,它将无法工作。
在加载页面时,我需要调用大量的服务器端获取函数,但是使用loaderfunction将返回获取的对象的未知类型。
发布于 2022-09-12 07:36:51
不确定您所说的“外部组件不起作用”是什么意思,但现在可以在useLoaderData():https://github.com/remix-run/remix/pull/3276中推断加载程序函数
示例:
const loader = (args: LoaderArgs)=>{ ... }
function App(){
const data = useLoaderData<typeof loader>();
}
发布于 2022-10-07 09:17:21
getserversideprops和加载程序函数的主要区别在于组件中处理道具的方式。
在Next.js中,您返回一个道具结构,它是组件的参数,但在Remix中,这是通过useLoaderData钩子https://remix.run/docs/en/v1/api/remix#useloaderdata完成的。
加载器函数向客户端返回一个响应。它是从服务器到客户端的HTTP响应。https://remix.run/docs/en/v1/api/remix#http-helpers
如果您需要在加载器中调用多个函数,您可以这样做,但请记住,它们在服务器上运行,而不是在客户机上运行,因此数据应该在服务器中显示。
https://stackoverflow.com/questions/73436936
复制相似问题