Intellisense не работает для JavaScript в Visual Studio 2012


У меня есть чистая, готовая установка Visual Studio 2012 Web Developer Express, и по какой-то причине поддержка JavaScript (как jQuery, jQuery UI, так и других библиотек) исчезла. Я считаю, что это сработало раньше, а затем "без причины" он остановился.

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

  1. У меня нет ключа HKEY_CURRENT_USERSoftwareMicrosoftVisualStudio11.0JavaScriptLanguageServiceImplicitReferences в моем реестре. На самом деле, у меня даже нет каталога JavaScriptLanguageService.

  2. Я проверил, что указанный файл domWindows.js действительно там, где указывают варианты.

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

  4. Я сослался на jQuery-файл, который я использую через параметры, но он не произвел никаких изменений.

в целом я получаю сообщение об ошибке, говоря, что:

"intellisense не удалось определить точный список завершения для этого выражения, предоставленный список содержит все идентификаторы в файле"

любые предложения будут высоко оценили.

8 68

8 ответов:

спасибо CraigTP

резюме:

  1. перейдите в раздел [Инструменты] > [Параметры] > текстовый редактор > JavaScript > IntelliSense > параметры ссылок

  2. выберите неявный (Web)

    вы можете найти " ~ / Scripts / _references.js" (если вы хотите поместить его в другое место, измените его здесь)

  3. перейдите в ~ / Scripts и добавьте новый элемент "_references.ОАО"

  4. добавить /// <reference path="path\jquery-1.7.1.js" /> в "_references.ОАО"

    или /// <reference path="~\root\path\jquery-1.7.1.js" />

удачи в кодировании :)

редактировать Примечание:

Не забудьте поставить jquery-1.7.1-vsdoc.js в той же папке с jquery-1.7.1.js

после внесения вышеупомянутых изменений, если он все еще не работает попробуйте перезапустить visual studio.

перейдите в меню инструменты ->опции ->Текстовый Редактор ->JavaScript -> Intellisense ->ссылки и поместите ссылку на файлы intellisense для версии jQuery, которую вы используете в Неявный Веб группы.

Enter image description here

или

поместите "добавить ссылку" на файл intellisense в _references.js файл, который вы можете добавить в Scripts папка вашего проекта.

/// <reference path="jquery-1.8.2.js"/>
/// <reference path="jquery-1.8.2.min.js"/>
/// <reference path="jquery-1.8.2.intellisense.js"/>

хотя это обеспечит только intellisense для проекта, в котором вы находитесь,первый будет для любого открытого файла JavaScript, а не только для тех, в которых вы находитесь.

чтобы получить последние файлы jQuery с intellisense используйте NuGet установщик пакетов, который по умолчанию создаст папку скриптов и разместит версию jQuery.Яш, мин.js и intellisense.js файлы В... Оттуда вы можно скопировать их в расположение, в котором находится большинство ссылок Microsoft, что обычно:

install-package jquery в консоли диспетчера пакетов.

C:\Program файлы (x86)\Microsoft Visual Studio 11.0\JavaScript\References

резюме:

  1. перетащите .js файл, на который вы хотите ссылаться из Обозреватель в ваш текущий. (Visual studio создаст фрагмент ссылки.)

попробуйте добавить их в неявные ссылки JavaScript. Это находится в меню Сервис - > Параметры -> текстовый редактор -> JavaScript -> IntelliSense - > ссылки.

чтобы добавить jQuery и его файлы intellisense в активный / открытый проект / веб-сайт

в Visual Studio 2012 выполните следующие действия:

открыть меню инструменты ->Диспетчер Пакетов Библиотеки ->Управление пакетами Nuget для решения. Щелкните онлайн-поле / селектор в самой правой части диалогового окна. Найдите jQuery в среднем списке, щелкните его и нажмите установить.

обратите внимание, что файлы сценариев jQuery теперь вставляются в проект, глядя на панель обозревателя решений. Вы должны увидеть jquery-1.x.x.js (где x здесь-это заполнители для фактических номеров версий. Скажем, jquery-1.9.0.JS-это конкретный пример).

кроме того, обратите внимание, что теперь есть Jquery-1.9.0.технология IntelliSense.js файл там. Аккуратный ИИ? : -)

но имейте в виду, что если вы создадите новый сайт в Visual Studio и выберете asp:NET Web forms site (в отличие от пустого сайта), сайт веб-форм будет уже есть jQuery 1.7.1 там).

Я включил jquery-xxx. intellisense.js in JavaScript -> Intellisense ->ссылка. Он работал один раз, но после того, как я закрыл Visual Studio и перезапустил его, intellisense больше не работал. Но я случайно попал в меню Edit -> intellisense ->Обновить Удаленные Ссылки. Это снова сработало. Попробуй это!

используйте пакет документации NuGet IntelliSense для JQuery, установив его следующим образом из консоли NuGet:

Install-Package jQuery-vsdoc

после установки пакета перейдите по ссылке:

Tools>>Options>>Text Editor>>JavaScript>>Intellisense>>References

и добавить ссылку на Implicit(Web) группа, выбрав расположение установленного пакета на жестком диске.

перезапустите Visual Studio, и вы получите работу jQuery intellisense.

что в конечном итоге работает для меня, чтобы изменить порядок списка в _references.js. У меня было почти 150 строк там из-за кучи плагинов, импортированных в проект, и jQuery был почти внизу. Когда я переместил его ссылку на вершину, мой intellisense снова начал работать.

как это выглядит:

/// <autosync enabled="true" />
/// <reference path="jquery-2.1.3.js" />
/// <reference path="jquery-ui-1.11.2.js" />
/// <reference path="modernizr-2.8.3.js" />
... more reference lines

Примечание ссылка на jquery - {version}.js файл. Существует также файл, установленный с пакетом Nuget в том же каталог с именем jquery - {version}.интеллиенс.js, который я предполагаю, что используется. Надеюсь, это поможет.