Visual studio 2015 使用Visual Studio&;从打字移动到@types;Typescript 2.0.3

Visual studio 2015 使用Visual Studio&;从打字移动到@types;Typescript 2.0.3,visual-studio-2015,typescript-typings,typescript2.0,Visual Studio 2015,Typescript Typings,Typescript2.0,我尝试从我的web项目(Visual Studio 2015社区)中删除打字,并通过package.json中的新NPM@types(typescript 2.0.3)安装d.ts文件: "dependencies": { "@types/angular": "^1.5.8", "@types/angular-cookies": "^1.4.2", "@types/angular-local-storage": "^0.1.33", "@types/angula

我尝试从我的web项目(Visual Studio 2015社区)中删除打字,并通过package.json中的新NPM@types(typescript 2.0.3)安装d.ts文件:

 "dependencies": {
    "@types/angular": "^1.5.8",
    "@types/angular-cookies": "^1.4.2",
    "@types/angular-local-storage": "^0.1.33",
    "@types/angular-material": "^1.1.37",
    "@types/angular-translate": "^2.4.33",
    "@types/lodash": "^4.14.36"
  }
VisualStudio的IntelliSense以前在打字方面工作得很好,因为我在VS项目中包含了typings文件夹。NPM将类型安装到
node\u modules/@types
文件夹中。现在我的问题来了。我真的不想在VS项目中包含来自
node\u模块的任何内容。
node\u modules
文件夹可以被npm随意删除并重新创建。 Visual Studio无法识别未包含在项目中的已安装打字! 我想我可以创建一个包含///引用标记的文件,但是在安装/删除打字时,我必须手动维护这个文件


有什么推荐的方法可以让VS IntelliSense正常工作吗?

在切换到2.0并使用新的@types约定后,我也遇到了同样的问题

在查看tsconfig.json的规范后,我在这里发现了这个有用的属性:

编译器选项的“typeRoots”属性

我无法获得文件或包含数组来拉入我的打字,但这似乎为我做到了这一点

以我的tsconfig.json文件为例:

{
  "compileOnSave": true,
  "compilerOptions": {
    "outDir": "./dist/",
    "sourceMap": true,
    "noImplicitAny": false,
    "module": "commonjs",
    "target": "es5",
    "jsx": "react",
    "typeRoots": [
      "node_modules/@types"
    ]
  }
}

希望这对有同样问题的人有所帮助。

安装VS 2015 Update 3,然后安装TypeScript 2.0.3工具。

以下是在Visual Studio 2015中使用@types的示例(从更新3开始)

首先,确保使用TypeScript v2.0.3或更高版本

然后,按如下方式添加打字:

  "devDependencies": {
    "typescript": "^2.0.3",

    "@types/jquery": "*",
    "@types/lodash": "^4.14.36"
  }
然后,在TypeScript文件中,只需添加以下内容

/// <reference path="jquery.d.ts"/>
/// <reference path="jquery.lodash.d.ts" />
//
/// 
要查看库类型是否可用,请签出,电源为

参考资料:

  • MSDN博客-类型脚本:
  • MSDN博客-没有时间:

这确实为typescript编译器提供了技巧。但是VisualStudioIntellisence仍然抱怨缺少类型。您是否通过“npm安装-g typescript”全局安装了typescript?我似乎对intellisense没有任何问题,肯定缺少其他一些全局配置。除了全局安装的typescript之外,您是否运行了“npm安装typings-g”?在仔细检查之后,我意识到当使用新的@types repo时,Intellisense的模块将不可用,除非显式导入。例如,对于lodash,我必须使用“lodash”中的
import*as我想这就是我最初问题的答案。这对我和构建来说都是固定的IntelliSense-我直到现在才使用Tconfig文件,因为项目在Visual Studio中有自己的TypeScript设置