Vercel не может найти модуль или объявление типа при создании приложения Next.js

Я пытаюсь развернуть приложение Next.js на Vercel, и кажется, что реагирует на прокручивание иметь собственные объявления типов, но:

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

Мне нужно что-то добавить в tsconfig.json? Сейчас это выглядит так:

{
  "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"]
}

Строится отлично локально, как обычно. Я что-то упускаю?


person nusantara    schedule 21.01.2021    source источник
comment
есть ли зависимость dev, которая разрешает эти типы библиотек? вы могли бы начать с этого   -  person humanbean    schedule 21.01.2021
comment
@humanbean вы совершенно правы. Я думал, что библиотека со встроенными типами означает, что ей больше ничего не нужно. но это так. npm i --save-dev @types/react-swipeable работал. Благодарность!   -  person nusantara    schedule 21.01.2021
comment
react-swipeable мне кажется, что у меня нет собственных определений типов   -  person Explosion Pills    schedule 21.01.2021


Ответы (1)


Следуя предложению @manbean в комментарии, я запустил npm i --save-dev @types/react-swipeable, и это сработало.

Я думал, что библиотека со встроенными типами означает, что ей больше ничего не нужно, но я ошибался.

person nusantara    schedule 21.01.2021