Задать вопрос
alex4answ
@alex4answ

Почему в CRA @types зависимости в dependencies, а не devDependencies?

Добрый день, создал приложение с помощью:
npx create-react-app app --template typescript

и в package.json dependencies:
"@testing-library/jest-dom": "^5.11.6",
    "@testing-library/react": "^11.2.2",
    "@testing-library/user-event": "^12.5.0",
    "@types/jest": "^26.0.18",
    "@types/node": "^12.19.8",
    "@types/react": "^16.14.2",
    "@types/react-dom": "^16.9.10"


Если перенести их в devDependencies

то tsconfig.json начинает ругаться на строку:
"jsx": "react-jsx"
Specify JSX code generation: 'preserve', 'react', 'react-jsx', 'react-jsxdev' or 'react-native'.
Requires TypeScript version 2.2 or later.

Argument for '--jsx' option must be: 'preserve', 'react-native', 'react'.


typescript: 4.1.2

Что происходит?
  • Вопрос задан
  • 583 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Merion Academy
    Frontend-разработка на React
    4 месяца
    Далее
  • ProductStar
    React: отточите навыки интерфейсной разработки
    6 недель
    Далее
Решения вопроса 1
alex4answ
@alex4answ Автор вопроса
1. Потому что не важно где зависимости, react приложение все равно будет собрано webpack и поставляться бандлами
2. Ошибка возникает потому что TypeScript VSCode не использует новые функции Babel, а CRA использует.
Чтобы устранить нужны выбрать версию typescript из workspace
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
IT ATLAS Москва
от 200 000 до 250 000 ₽
ITK academy Казань
от 50 000 до 90 000 ₽