当尝试使用nextauth提交nextjs时,由于此错误,lint stage失败,
Explicitly specified file was ignored due to negative glob patterns: "c:/projects/project01/app/api/auth/[...nextauth]/route.ts".
字符串
package.json中的lint stage配置,
"lint-staged": {
"**/*": "prettier --write --ignore-unknown"
}
}
型
这个错误是由于nextjs捕捉所有路由文件夹名称与括号?
2条答案
按热度按时间isr3a4wc1#
我有一个相同的案例
据我所知,你必须使用Windows以外的终端来解决这个问题
请阅读prettier-isue
字符串
本文档解释了到目前为止您所采取的步骤,以尝试重现Prettier在处理具有特殊名称的文件时遇到的问题。
第一步:创建测试项目
1.使用
npx create-next-app@latest
创建Next.js项目。1.选择配置选项,如TypeScript、Tailwind CSS和ESLint。
型
第二步:安装Prettier
1.安装Prettier作为开发依赖项:
型
第三步:创建测试文件
1.创建文件
.src/pages/api/auth/[...nextauth].ts
。1.将简单的TypeScript代码添加到测试文件中。
第四步:尝试跑得更漂亮
1.尝试使用命令
npx prettier --write "./src/pages/api/auth/[...nextauth].ts"
在测试文件上运行Prettier。1.接收错误:
[error] Explicitly specified file was ignored due to negative glob patterns: "./src/pages/api/auth/[...nextauth].ts".
。第五步:尝试转义特殊字符
1.尝试使用不同的方法转义文件名
[...nextauth].ts
中的特殊字符,包括PowerShell中的插入符号(“^","`",””)字符。1.在Windows下没有成功解决此问题的转义方法。
第六步:使用Zsh终端测试
1.使用Zsh终端运行相同的命令:
npx prettier --write ./src/pages/api/auth/\[...nextauth\].ts
。1.在转义方括号后,命令在Zsh中成功工作。
第七步:自定义命令测试
1.向
package.json
文件添加自定义命令:"format:fix": "prettier --write --ignore-path .gitignore ."
npm run format:fix
命令成功格式化所有目标文件,包括[...nextauth].ts
。第八步:总结
不幸的是,即使在多次尝试转义
[...nextauth].ts
文件名中的特殊字符后,该问题在Windows下仍然存在。由于负glob模式,Prettier继续拒绝该文件。我的设置
生成:
型
系统:
二进制文件:
npmPackages:
其他信息
(does无法在Windows上使用这些终端)
它工作了
p1iqtdky2#
有了这个lint-stage配置问题解决了。
字符串