reactjs - Vercel kan module of type-declaratie niet vinden bij het bouwen van Next.js-app
Ik probeer een Next.js-app te implementeren op Vercel en react-swipeable lijkt zijn eigen type-verklaringen te hebben, maar:
Running "npm run build"
...
> next build
...
Failed to compile.
./components/SwipeBox.tsx:5:30
Type error: Cannot find module 'react-swipeable' or its corresponding type declarations.
3 |
4 | import { NextPage } from "next";
> 5 | import { useSwipeable } from "react-swipeable";
| ^
6 |
7 | interface SwipeBoxProps {
8 | children: React.ReactNode;
...
Error: Command "npm run build" exited with 1
Moet ik iets toevoegen aan tsconfig.json? Het ziet er momenteel zo uit:
{
"compilerOptions": {
"target": "es2020",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"checkJs": true,
"skipLibCheck": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve"
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "next.config.js"],
"exclude": ["node_modules", "next.config.js"]
}
Bouwt zoals gewoonlijk perfect lokaal. Mis ik iets?
Antwoord #1
Volgens het voorstel van @humanbean in de reactie heb ik npm i --save-dev @types/react-swipeable uitgevoerd en het werkte.
Ik dacht dat het feit dat de bibliotheek ingebouwde types had betekende dat het niets anders nodig had, maar ik zat verkeerd.