在 VS2017 中关闭 "Language Service Disabled" 错误消息

Turning off "Language Service Disabled" error message in VS2017

我们在 Visual studio 2017 Enterprise 的 MVC Web 应用程序中收到以下 "Error" 消息。

The language service is disabled for project 'C:\Work\Blackhawk Platform\Platform-DEV-Branch\BlackhawkViewer\BlackhawkViewer.csproj' because it included a large number of .js files. Consider excluding files using the 'exclude' section of a 'tsconfig.json' file.

我试过在选项中关闭语言服务,但这并没有关闭消息:

这是一个相当大的网络应用程序。有没有一种方法可以在不禁用 tsconfig.json 文件中的任何文件的情况下关闭此消息?

我找到了解决这个问题的方法。

我使用以下方法重置了我的用户数据:

devenv.exe /resetuserdata

执行此操作后,JavaScript 设置似乎一直存在,我不再收到上述语言服务错误。

注意:这将重置您的所有用户数据和自定义设置。

要解决此问题,请执行以下操作:

  • 在项目的根目录中创建文件并将其命名为 tsconfig.json
  • 添加这个:
{
  "compilerOptions": {
    "allowJs": true, 
    "noEmit": true, 
    "module": "system",
    "noImplicitAny": true,
    "removeComments": true,
    "preserveConstEnums": true,
    "sourceMap": true
  },
  "include": [
    "scripts"
  ],
  "exclude": [

  ],
  "typeAcquisition": {
    "enable": true 
  }
}

请查看以下两个链接以获取 tsconfig.json 说明,因为您可能仍需要根据您的设置进行更改。这是对我有用的唯一方法。希望对您有所帮助。
https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
https://developercommunity.visualstudio.com/content/problem/8148/javascript-intellisense-not-working.html

将 Ionic 1 项目从 VS2015 迁移到 VS2017 后,我遇到了同样的问题,首先我按照上面的建议执行了 git clean -fxd 并将此内容添加到我的离子项目中的 tsconfig.json 中。

{
"compilerOptions": {
    "noImplicitAny": false,
    "noEmitOnError": true,
    "removeComments": false,
    "sourceMap": true,
    "target": "es5"
},
"exclude": [
    "node_modules",
    "www",
    "bower_components"
    ]
}

我用以下方法解决了这个问题:

如果 JavaScript 文件包含在 project.csproj 文件中但不在项目文件夹中,则会发生此错误。

例如,我有一个如下所示的 .csproj 文件:

 <ItemGroup>
     <Content Include="Scripts\Test.js" />
 </ItemGroup>

Test.js 包含在 .csproj 文件中,但不在脚本文件夹中:

从 .csproj 文件中删除 <Content Include="Scripts\Test.js" /> 行并重建您的项目

对我有用的解决方案:

  1. 转到 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE>.
  2. 在当前文件夹中以管理员身份打开命令提示符
  3. 运行 devenv /设置
  4. 运行 devenv /ResetSkipPkgs

对我来说是帮助下一个解决方案。我使用 "disableSizeLimit": "true" 选项在我的项目的根目录中创建了一个 tsconfig.json 文件。

所以,我的 tsconfig.json 文件是:

{
  "compilerOptions": {
  "disableSizeLimit": "true"
},
"exclude": []
}

这对我有帮助。你可以试试看。

 Go to Tools -> Options -> Text Editor -> JavaScript/TypeScript -> Language Service -> General

并取消选中复选框:“启用新的 JavaScript 语言服务。

在我的例子中,我只是在 Visual Studio:

上禁用了 TypeScript 支持

工具 > 扩展和更新 > Microsoft 的 TypeScript Visual Studio > 禁用

之后,只需重新启动 Visual Studio,就可以了。

希望这会有所帮助,

If none of suggested methods worked, try:

npm install -g typescript@latest

然后

Get TypeScript 上为 Visual Studio 安装最新版本的 TypeScript。

希望这对您有所帮助...