javascript Next.js中间件应该放在哪里?

1l5u6lss  于 12个月前  发布在  Java
关注(0)|答案(1)|浏览(74)

我用的是下一个:^13.5.3版本。我在pages/middleware.js中创建了middleware.js

import { NextResponse } from "next/server";
 
export function middleware(req) {
 ...
}

并给出这个错误:ESLint:next/server不应在pages/_middleware.js之外导入。参见:https://nextjs.org/docs/messages/no-server-import-in-page(@next/next/no-server-import-in-page) *
该链接说:
只能在项目根目录下的文件中导入和使用next/server:中间件.{js,ts}. *
我把它移到根目录了。

但这次它给出了这个错误:*ESLint:next/server不应在pages/_middleware.js之外导入。参见:https://nextjs.org/docs/messages/no-server-import-in-page(@next/next/no-server-import-in-page) *
当我将其更改为pages/_middleware.js时,我在构建时得到这个错误。我很困惑

我的问题:
1.中间件文件的名称应该以“_”开头吗?
1.我应该把中间件文件放在哪个目录下,这样我就可以使用“NextResponse”了?

h5qlskok

h5qlskok1#

哦,我明白为什么。
我的“eslint-config-next”版本:12.0.8
我更新了最新版本并修复了。很抱歉浪费了大家的时间。

相关问题