Не удается найти файл определения типа для 'jquery'

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

Файл определения jquery находится в моем проекте. Но по какой-то причине файл определения начальной загрузки больше не может найти его.

Прошло некоторое время с тех пор, как я работал над этим проектом. Я уверен, что перед обновлением у меня были файлы определения в совершенно другом каталоге. Но большая часть кода и файловой структуры была создана автоматически пакетами Visual Studio NuGet.

Где эти ссылки или ссылки расположены так, что файлы определения могут быть найдены правильно? Я очень новичок в TypeScript, поэтому, если вы можете подробно объяснить или предоставить ссылки для дальнейшего чтения, было бы оценено

код и ошибка

файловое дерево


Edit:

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

Он говорит мне, что <reference types="..."/> следует использовать для пакетов @types, которые, как я считаю, являются файлами .d.ts. Я попытался изменить имя jquery.d.ts на index.d.ts. И я попытался включить весь путь, например ../jquery/jquery.d.ts. Ни один из них не работал.

Наконец, я нашел следующую строку в angular.d.ts:

/// <reference path="../jquery/jquery.d.ts" />

Я скопировал это в bootstrap index.d.ts и, похоже, исправил ошибку.

Но для меня это не имеет смысла. Во-первых, я пытаюсь связать файл определения, а не файл TypeScript. Поэтому я должен использовать reference types, а не reference path, согласно приведенной выше статье. Но reference types не работает. Что мне здесь не хватает?

В статье также говорится:

Используйте эти директивы только тогда, когда вы вручную создаете файл d.ts.

Я не писал эти файлы. Они пришли из NuGet и выглядят автоматически генерируемыми. Так зачем мне это менять?

Ответы

Ответ 1

Они пришли из NuGet и выглядят автоматически сгенерированными.

Не используйте nuget для определений типов. NPM - это путь.

npm install @types/jquery -D 

И затем вы можете:

<reference types="jquery"/>

добро пожаловать в будущее 🌹

Ответ 2

Я обнаружил, что меняя ///<reference types="jquery"/> на ///<reference path="../JQuery.d.ts"/> в jquery.slim.d.ts после установки @types/jquery исправил эту проблему для меня.