UseSWR 挂钩在 nextjs 组件中不起作用

The UseSWR hook not working in nextjs component

我正在尝试使用 useSWR 挂钩从 API 中获取数据。

API 和请求工作正常,但数据永远不会更新。 这是代码:

import useSWR from 'swr'
import { SERVER_URL } from '../config';
import axios from 'axios'

const fetcher = url => axios.get(url).then(res => res.data)

export default function MainPageView() {

  const { routines, error } = useSWR(`${SERVER_URL}/api/routines`, fetcher, { refreshInterval: 1000 })

  return (...The rest of the component)

在里面使用routines的时候我是这样称呼的{routines?routines:[]}

感谢您的帮助,对不起我的英语:)

已编辑: 我还会提到,如果我使用 F12 检查页面并转到网络选项卡,我确实看到正在发送和接收的请求以及所需的数据( 响应状态为 304)但是它从不更新 routines 变量。

useSWR hook returns 3 种状态 data, loading and error

尝试这样的事情

  const { data, error } = useSWR(`${SERVER_URL}/api/routines`, fetcher, { refreshInterval: 1000 })

使用数据

{data?.properties?.map((item)=>...) }

尝试使用const { data: routines, error } = useSWR(...),fetcher函数返回的数据在数据属性

中可用

答案由juliomalves

给出