Ответ 1
Они пришли из NuGet и выглядят автоматически сгенерированными.
Не используйте nuget для определений типов. NPM - это путь.
npm install @types/jquery -D
И затем вы можете:
<reference types="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 и выглядят автоматически генерируемыми. Так зачем мне это менять?
Они пришли из NuGet и выглядят автоматически сгенерированными.
Не используйте nuget для определений типов. NPM - это путь.
npm install @types/jquery -D
И затем вы можете:
<reference types="jquery"/>
добро пожаловать в будущее 🌹
Я обнаружил, что меняя ///<reference types="jquery"/>
на ///<reference path="../JQuery.d.ts"/>
в jquery.slim.d.ts после установки @types/jquery исправил эту проблему для меня.