Typescript Visual Studio 2017生成类型脚本传输错误

Typescript Visual Studio 2017生成类型脚本传输错误,typescript,msbuild,visual-studio-2017,Typescript,Msbuild,Visual Studio 2017,我正在使用VisualStudio中内置的对TypeScript的支持,这样当我保存TypeScript文件时,它们会被转换成JavaScript文件 我有以下脚本: declare namespace myLib { function makeGreeting(s: string): string; let numberOfGreetings: number; } $(document).ready(function () { alert("bp1"); }); 我

我正在使用VisualStudio中内置的对TypeScript的支持,这样当我保存TypeScript文件时,它们会被转换成JavaScript文件

我有以下脚本:

declare namespace myLib {
    function makeGreeting(s: string): string;
    let numberOfGreetings: number;
}

$(document).ready(function () {
    alert("bp1");
});
我的tsconfig.json文件包含以下内容:

{
  "compileOnSave": true,
  "include": [ "*.ts" ],
  "compilerOptions": {
    "allowJs": true,
    "sourceMap": true,
    "outFile": "..\\js\\site.js",
    "target": "es3"
  },
  "typeAcquisition": {
    "enable": true,
    "include": [ "jquery" ]
  }
}
当我保存文件时,它会被传输到JavaScript中,没有任何问题,但当我重建项目时,会出现以下错误:

TS2304生成:找不到名称“$”。演示文稿(演示文稿\演示文稿)C:\Development MVC\NET\Ev\Web\UI\Presentation\Content\ts\welcome.ts 6


我认为这与类型获取功能不适用于构建有关,但我不确定如何修复它。

类型定义的自动获取似乎不适用于jQuery。有

这是另一种方法

确保已安装jquery及其类型。我们可以从命令行使用NPM来实现这一点

npm install jquery --save
npm install @types/jquery --save-dev
或者,我们可以手动编辑package.json文件

{
  "dependencies": {
    "jquery": "^3.2.1"
  },
  "devDependencies": {
    "@types/jquery": "^3.2.11"     <----- These types will be necessary.
  }
}

最后是使用npm安装@types包,我已经使用Bower安装了jquery。tsconfig设置没有任何区别。我还必须将
true
添加到项目文件中。
{
  "compileOnSave": true,
  "include": [ "*.ts" ],
  "compilerOptions": {
    "allowJs": true,
    "sourceMap": true,
    "outFile": "..\\js\\site.js",
    "target": "es3",
    "lib": [                     <---- These two libs will be necessary.
      "dom",
      "es2015"
    ]
  },
  "typeAcquisition": {
    "enable": true,
    "include": [ "jquery" ]
  }
}