为什么error.tsx不能在NextJS应用程序目录中工作,即使在“use client”中也是如此?

6tdlim6h  于 2023-06-22  发布在  其他
关注(0)|答案(1)|浏览(140)

背景:

我正在使用NextJS 13.4和新的应用程序目录。
我在app文件夹中有一个名为products的文件夹。
products文件夹中,我有一个文件page.tsx,它加载得很好。
但是当我尝试添加文件error.tsx时,我得到错误。
error.tsx的内容,遵循官方文档:

"use client";

export default function Error({ error, reset }: { error: Error, reset: () => void }) {
  return (
    <>
      <h2>Something went wrong!</h2>
      <button onClick={() => reset()}>Try again</button>
    </>
  )
}

当前行为:

我得到错误"./app/products/error.tsx must be a Client Component. Add the "use client" directive the top of the file to resolve this issue.",即使我在文件的顶部有它

预期行为:

页面加载良好,并且错误组件在发生错误时显示
当我在文件的顶部有“使用客户端”时,为什么它会抱怨它?

mrwjdhj3

mrwjdhj31#

我认为问题可能来自缓存页面。删除.next文件夹,然后运行“npm run dev”

相关问题