Typescript: не удается найти файл определения типа для 'bin', 'sr c', 'test' - PullRequest
1 голос
/ 09 мая 2020

Я новичок в интерфейсе и, вероятно, очень тупой. Однако в двух словах, если я сделаю это

yarn add @mapbox/polyline

, я внезапно получаю всевозможные полезные ошибки, подобные этой, когда я yarn start:

undefined
TypeScript error in undefined(undefined,undefined):
Cannot find type definition file for 'bin'.  TS2688

undefined
TypeScript error in undefined(undefined,undefined):
Cannot find type definition file for 'src'.  TS2688

index.js:1 undefined
TypeScript error in undefined(undefined,undefined):
Cannot find type definition file for 'test'.  TS2688

Хорошо, круто. Итак, я по-королевски сломал эту (git) ветку (был там!), Так что давайте просто вернемся к рабочей ветке master ... но yarn start теперь дает те же ошибки на master! Это как если бы простой набор yarn add @mapbox/polyline что-то локально повреждает настолько сильно, что это невозможно исправить. Мне приходится снова клонировать свое репо и запускать fre sh.

(поскольку я использую Typescript, я также пробовал добавлять типы yarn add @types/mapbox__polyline ... это ничего не делает, чтобы облегчить мою боль.)

Обычно, если бы я писал на более знакомом мне языке, я бы пожаловался ребятам из Mapbox. Но эта ошибка настолько не поддается расшифровке, что я понятия не имею, это то, что сделали люди Mapbox, или я полный n00b.

Итак, у меня есть три вопроса: 1) это нормально? 2) Если это не нормально, на что мне жаловаться? 3) Если это нормально, то какая подпись у этого пакета должна была предупредить меня, чтобы я не набирал yarn add @mapbox/polyline?

Мы не можем существовать в мире, где пакет может буквально взорвать вашу сборку ... или мы можем? Спасибо.

Ответы [ 2 ]

1 голос
/ 10 мая 2020

На случай, если это поможет кому-то еще, добавив "types": [] к compilerOptions в tsconfig.json, исправил.

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

0 голосов
/ 09 мая 2020

Обычно вы добавляете пакет @types\mapbox\polyline. Однако типизация может не существовать

Если вы хотите подавить их (если типы не существуют), вы можете добавить файл в свой проект

mapbox-polyline.d.ts (или любое другое имя, которое вы выберете до тех пор, пока он заканчивается на .d.ts)

с текущим содержимым

declare module '@mapbox/polyline'

Обновление: я тестировал добавление этого пакета, и yarn add mapbox/polyline кажется импортировать его. Однако в репозитории git говорится, что ломаная линия устарела в пользу @mapbox/polyline, так что, возможно, авторы набора не догнали.

Обновление: я бы предложил удалить пакеты, которые у вас есть прямо сейчас, а затем переустановите с последней версией @ mapbox / polyline с yarn add @mapbox/polyline, затем подавите предупреждения typescrpt, добавив на данный момент объявление окружающей среды.

...