next.js 下一个js动态路由刷新时重定向到主页

lb3vh1jj  于 2023-02-12  发布在  其他
关注(0)|答案(1)|浏览(260)

我在我的项目中有一个动态路由,它不是ssr.

当我刷新页面时,它会重定向到主页,但在其他页面中,刷新工作正常。我实际上已经将trailingSlash: true添加到我的next.config中,但它仍然不工作。

const redirectToLivePage = async () => {
    const result = await dispatch(
      getMeetingAction(meetingId, { shares_count: shares }),
    );
    
    if (result.ok) {
      router.push(`/meetings/${meetingId}/shares_count=${shares}`);
    }
  };

这是我的动态网页代码。

const MeetingPage = () => {
  useEffect(() => {
    let interval;
    if (data?.data.stream_status !== 'complete') {
      interval = setInterval(() => {
        dispatch(getMeetingAction(id, { shares_count: shares }));
      }, 5000);
    }

    return () => {
      clearInterval(interval);
    };
    
  }, [data]);

  return (
      <>
        {data?.data?.stream_status === 'complete' ? (
          <Player src={data?.data?.stream_hls_playlist || ''} />
        ) : (
          <div
            className={s.poster}
            style={{ backgroundImage: `url(${poster})` }}
          >
            <div className="container">
              <p>{BE_PATIENT}</p>
            </div>
          </div>
        )}
        <div className={cs('container', s.message)}>
          <SendMessage id={data?.data?.id} />
        </div>
      </>
  );
};

export default MeetingPage;

在生产中发生,在本地运行良好。

falq053o

falq053o1#

可能与NextJS的警告有关,我也遇到过同样的问题,你可以在这里阅读
应通过以下方式进行修复:

export async function getServerSideProps(context) {
    return {
        props: {},
    };
}

也不要忘记重新启动应用程序。
希望这对别人有帮助。

更新日期:2023年2月7日

下面是它应该看起来像什么的一个例子:

function MyComponent () {
//
}

export async function getServerSideProps(context) {
    return {
        props: {},
    };
}

export default MyComponent;

参考:https://nextjs.org/docs/basic-features/data-fetching/get-server-side-props

相关问题