loï*_*res 2 server-side-rendering next.js swr
我们假设有以下页面:
export default ({ SSRtasks }) => {
const [ tasks, setTasks ] = useState(SSRtasks)
const { data: freshTasks, mutate } = useSwr('/api/tasks')
useEffect(() => freshTasks && setTasks(freshTasks), [ freshTasks ])
return (
<ul>{tasks.map(task => <li>{task}</li>)}</ul>
)
}
export const getServerSideProps = async ({ req, res }) => {
const SSRtasks = Task.find({ owner: id })
return { props: { SSRtasks } }
}
Run Code Online (Sandbox Code Playgroud)
知道任务在不断更新,就性能而言,这是正确的吗?
我找不到任何关于此的文档。(或者至少,理解)
查看文档的这一部分,您可以获取服务器端的数据,然后您可以将服务器端数据传递给 swr 以设置初始状态
const { data, revalidate } = useSWR('/api/posts', fetcher, { initialData: props.posts })
Run Code Online (Sandbox Code Playgroud)
当您获取新数据时,您可以调用 revalite,swr 将处理新数据。查看此答案以了解更多详细信息
| 归档时间: |
|
| 查看次数: |
4795 次 |
| 最近记录: |