找不到“yup”的类型定义文件。该文件位于程序中,因为: 隐式类型库“yup”的入口点

Ruk*_*thu 6 typescript reactjs next.js yup

tsconfig.json
{
    "compilerOptions": {
        "sourceMap": true,
        "outDir": "dist",
        "target": "es5",
        "lib": ["es6", "dom", "dom.iterable", "esnext"],
        "allowJs": true,
        "skipLibCheck": true,
        "strict": true,
        "forceConsistentCasingInFileNames": true,
        "noEmit": true,
        "incremental": true,
        "esModuleInterop": true,
        "module": "esnext",
        "moduleResolution": "node",
        "resolveJsonModule": true,
        "isolatedModules": true,
        "jsx": "preserve",
        "noImplicitAny": true,
        "noImplicitThis": true,
        "strictNullChecks": true
    },
    "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
    "exclude": ["node_modules"]
}


Run Code Online (Sandbox Code Playgroud)

我在 tsconfig.json 中遇到此错误,因此由于此错误,当我构建 nextjs 项目时,我无法运行“npm run build”此命令。有人知道如何修复此问题吗?

Ruk*_*thu 19

将此行添加到对象tsconfig.json内的文件中compilerOptions

"typeRoots": ["node_modules/yup"]
Run Code Online (Sandbox Code Playgroud)

  • 如果您安装“@types/yup”包,也可能会发生这种情况。对于该包,它不再被维护,并且有自己的类型。 (3认同)

小智 10

正如 Nate Wilkins 在评论中指出的那样,错误是由@types/yup包引起的。该包已被弃用,不再需要,因为 yup 现在在其包中包含了自己的类型,因此可以将其删除