VS 2015: отсутствие подсветки и intellisense в файлах JS
Я не могу воспроизвести проблему, но подсветка или intellisense не работает в файлах .js
, но она отлично работает в файлах .json
.
Редактором по умолчанию для файлов .js
является редактор JSON.
Я попробовал безопасный режим, отключив все расширения, сбросив все настройки, и даже переустановил IDE (ремонт), но проблема все еще сохраняется.
Я добавлю, что при запуске IDE и JS файла открывается в области видимости, появляется следующее сообщение об ошибке (подсветка и intellisense не работают):
Пакет "JavaScriptWebExtensionPackage" загружен неправильно.
Проблема может быть вызвана изменением конфигурации или установкой другого расширения. Вы можете получить дополнительную информацию, изучив файл "C:\Users\Shimmy\AppData\Roaming\Microsoft\VisualStudio\14.0\ActivityLog.xml".
Перезапуск Visual Studio может помочь решить проблему.
Продолжить, чтобы показать это сообщение об ошибке?
Здесь вы можете просмотреть файл ActivityLog.xml, который я вставил в некоторые из последних строк, которые, я думаю, могут иметь значение:
<entry>
<record>188</record>
<time>2015/08/14 13:00:57.332</time>
<type>Information</type>
<source>VisualStudio</source>
<description>Begin package load [JavaScriptWebExtensionsPackage]</description>
<guid>{30DB8F9B-EC9F-44D6-B377-83C7C27A1A8B}</guid>
</entry>
<entry>
<record>189</record>
<time>2015/08/14 13:00:57.394</time>
<type>Error</type>
<source>VisualStudio</source>
<description>SetSite failed for package [JavaScriptWebExtensionsPackage]</description>
<guid>{30DB8F9B-EC9F-44D6-B377-83C7C27A1A8B}</guid>
<hr>80131500</hr>
<errorinfo>Expected 1 export(s) with contract name "Microsoft.VisualStudio.JavaScript.Web.Extensions.ReferenceAutoSync.IReferencesFilePathProvider" but found 0 after applying applicable constraints.</errorinfo>
</entry>
<entry>
<record>190</record>
<time>2015/08/14 13:00:57.394</time>
<type>Error</type>
<source>VisualStudio</source>
<description>End package load [JavaScriptWebExtensionsPackage]</description>
<guid>{30DB8F9B-EC9F-44D6-B377-83C7C27A1A8B}</guid>
<hr>80131500</hr>
<errorinfo>Expected 1 export(s) with contract name "Microsoft.VisualStudio.JavaScript.Web.Extensions.ReferenceAutoSync.IReferencesFilePathProvider" but found 0 after applying applicable constraints.</errorinfo>
</entry>
Ответы
Ответ 1
Я нашел ответ здесь: Visual Studio 2015 RTM - потерял поддержку JavaScript после обновления TypeSript Tools
Это шаги для его исправления:
Если "Универсальные средства разработки приложений для Windows" все еще установлены:
- Перейдите в раздел "Программы и компоненты", выберите "Visual Studio 2015", нажмите "Изменить".
- В настройке Visual Studio нажмите "Изменить".
- Отмените выбор функции "Универсальные средства разработки приложений для Windows"
- Еще раз выберите "Универсальные инструменты разработки приложений для Windows" и нажмите "Обновить".
Если вы уже удалили "Универсальные инструменты разработки приложений для Windows":
- Переустановите "Универсальные средства разработки приложений для Windows"
- Чтобы выполнить повторную установку системы JavaScript и языковой службы, выполните следующие действия:
- Загрузите программу установки для вашей версии Visual Studio, например, vs_community.exe.
- Откройте окно CMD и запустите следующую команду: vs_community.exe/modify/installselectableitems JavaScript_Hidden/passive
Я выполнил первые шаги и получил поддержку Javascript.
Надеюсь, что это поможет
-UPDATED -
После того, как я сделал вышеуказанные шаги, почти все работало, за исключением того, что каждый раз, когда я открывал файл .js, я получал сообщение об ошибке, следующее трюк:
Я предполагаю, что только переустановка SDK не обновила кеш MEF. Вы можете сделать это вручную, выполнив следующие шаги:
Откройте командную строку как администратор
- CD в C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE
- Запуск devenv/updateconfiguration
- Запустить devenv/clearcache
Это избавило от последней ошибки, и все работает нормально.
Источник: https://github.com/Microsoft/TypeScript/issues/4238
Ответ 2
Проблема, похоже, исправлена в обновлении 1. Я нахожусь в профессиональной версии, но я думаю, что она применима ко всем версиям.
Чтобы быть понятным, Intellisense не работал у меня для связанных с CSS материалов на бритвенных файлах и после обновления 1, кажется, работает.
Ответ 3
Я знаю, что этот вопрос явно нацелен на Visual Studio 2015.
Однако я хотел поставить свои два цента для тех, кто отчаянно опробовал, если принятый ответ также работает для Visual Studio 2017.
В моем случае потеря подсветки синтаксиса была вызвана новой службой языка javascript. Я вернул его сразу после отмены выбора следующего флажка и перезапуска Visual Studio:
Инструменты > Параметры > Текстовый редактоp > JavaScript/ TypeScript > Язык Сервиs > Включить новую службу языка JavaScript. *
Ссылка: https://developercommunity.visualstudio.com/comments/34109/view.html