Visual Studio Javascript форматирование игнорирует мои настройки - PullRequest
0 голосов
/ 15 октября 2019

Без видимой причины, в понедельник, мой VS2017 начал получать сообщение об ошибке, выделенной в этой публикации SO , и все JS Intellisense и автоформатирование исчезли.

Удалось исправить этоотключение Enable the new JavaScript language service но теперь автоформатирование игнорирует мои настройки;внутренний стиль - это фигурная скобка на новой строке после функций, которая установлена, но переформатирование Ctrl-ED теперь перемещает все фигурные скобки в ту же строку, что и определение функции.

Как это исправить?

РЕДАКТИРОВАТЬ: Я нашел эту старую ветку с идентичной проблемой, но, к сожалению, не исправить для новой языковой службы: https://developercommunity.visualstudio.com/content/problem/138728/if-statements-still-place-a-opening-brace-on-the-s.html

Раздражает то, что он работал в течение нескольких месяцев и месяцев, и только остановилсявчера, без изменений настроек.

ПРАВКА, чтобы добавить ошибку Intellisense:

The JavaScript and TypeScript language service has been disabled due to an error. You may see reduced IntelliSense support for your project. Please try reloading your solution to reenable the language service.
Error processing request. Cannot read property 'length' of undefined
TypeError: Cannot read property 'length' of undefined
    at createSourceFile (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:16674:110)
    at Object.parseJsonText (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:16508:26)
    at Object.parseJsonText (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:16330:23)
    at ProjectService.loadConfiguredProject (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:120258:33)
    at ProjectService.createAndLoadConfiguredProject (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:120247:22)
    at ProjectService.createLoadAndUpdateConfiguredProject (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:120251:36)
    at ProjectService.openClientFileWithNormalizedPath (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:120776:44)
    at ProjectService.applyChangesInOpenFiles (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:120882:30)
    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:121548:46)
    at C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:123063:88
    at IOSession.Session.executeWithRequestId (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:123054:28)
    at IOSession.Session.executeCommand (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:123063:33)
    at IOSession.Session.onMessage (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:123083:35)
    at Interface.<anonymous> (C:\Program Files (x86)\Microsoft SDKs\TypeScript\3.1\tsserver.js:124346:27)
    at Interface.emit (events.js:182:13)
    at Interface._onLine (readline.js:290:10)
    at Interface._normalWrite (readline.js:433:12)
    at Socket.ondata (readline.js:149:10)
    at Socket.emit (events.js:182:13)
    at addChunk (_stream_readable.js:283:12)
    at readableAddChunk (_stream_readable.js:264:11)
    at Socket.Readable.push (_stream_readable.js:219:10)
    at Pipe.onread (net.js:638:20)

1 Ответ

1 голос
/ 16 октября 2019

С отключенной новой языковой службой.

1.После того как вы отключили JavaScript Language Service, используйте команды ниже в Командная строка разработчика , чтобы установить параметр:

CD %VSINSTALLDIR%

vsregedit set . HKCU "ApplicationPrivateSettings\TextEditor\JavaScript\Specific" "PlaceOpenBraceOnNewLineForControlBlocks" string "0*System.Int32*1"

См. this .

С включенной новой языковой службой.

2. Попробуйте создать новый проект(может быть, вы находитесь в проекте node.js?), чтобы проверить, сохраняется ли подобная проблема, если эта проблема исчезла, возможно, причина вашей проблемы в том, что ваш проект теперь содержит слишком много файлов JS. См. ограничение здесь.

Если проблема сохраняется в новом проекте, восстановите VS или обновите VS2017 до последней версии 15.9.16, чтобы проверить, помогает ли это. Я думаю, что-то сломано в вашей среде.

Также попробуйте удалить скрытую папку .vs в каталоге решений после закрытия VS, очистить кэш VS и перезапустить VS.

...