我试图将我的代码推送到Vercel,它在检查类型有效性的构建步骤中失败。
这是收到的完整错误:
info - Checking validity of types...
Failed to compile.
./node_modules/next/dist/client/image.d.ts:19:14
Type error: Cannot find name 'StaticImageData'.
我尝试将Next.js版本回滚到11,但不工作。
编辑:
我发现了这个类似的Github问题,但是它似乎没有多大帮助。
https://github.com/vercel/next.js/issues/29788
您可以临时创建一个全局类型,直到问题解决,如下所示:
global-types.d.ts
export {};
declare global {
type StaticImageData = {
src: string
height: number
width: number
blurDataURL?: string
};
}
然后将其作为tsconfig.json
文件中的第一项引用:
"include": ["./global-types.d.ts","next-env.d.ts", "**/*.ts", "**/*.tsx"]
一旦他们解决了这个问题,删除引用。
截至2022年2月16日,这已经修复,现在你可以像这样导入StaticImageData
:
import { StaticImageData } from "next/image"