typescript - 配置 Visual Studio 2015,使 Typescript 虚拟项目永远不会创建 'loose files'

标签 typescript typescript1.5

几个月来,我一直在尝试在 Visual Studio 中配置 typescript 。

我找不到关于如何在 Visual Studio Enterprise 2015 中安装或配置 Typescript 的明确、可靠和完整的规范,这样我就不会陷入让我的 x.ts 文件在“杂项”虚拟机中弹出的陷阱项目与包含 lib.d.ts 和 tsconfig.json 的虚拟项目分开。

这种情况会导致智能感知丢失,需要返回到通用三斜线引用,以及在任何商业开发或其他生产相关环境中根本无法提交的代码。简而言之,它使 TypeScript 成为专业开发人员的非入门者。

与 2014 年和 2015 年相比,2016 年关于此主题的谷歌搜索状况有所改善,但最权威的信息仍在 Microsoft 的 Typescript Github 问题列表中,但这些答案过于具体,不够明确,无法用作一般指南。其他最佳定义是 Scott Logic's discussionthe Typescript site's tutorial on ASP.NET 4 projects .

我已将 TypescriptVersion 变量设置为 VS2015 的 MS SDKs Typescript 文件夹中的正确版本。在我的例子中是 15.0(尽管 Typescript 的 MSBuild 版本是 18.0)。所以我不再收到与此有关的恼人错误。

我有一个与 Typescript 站点的 ASP.NET 4 项目中描述的文件匹配的正确 tsconfig.json 文件。

我有一个 VS2015 生成的 lib.d.ts 文件,我的包含 lib.d.ts 和 tsconfig.json 文件的虚拟项目名称被命名为 myproject(tsconfig.json)。所有这些都是意料之中的。

但是,一旦我将一个空白的“base.ts”文件添加到我的 Scripts/common 文件夹中,我就会得到另一个名为“Miscellaneous”的 Typescript 虚拟项目,其中包含一个 lib.es6.d.ts 文件和我的新基础。 TS。

这意味着 VS2015 将我的新空 .ts 文件识别为“松散文件”,与 typescript 编译上下文无关。上面提到的 Scott Logic 的帖子就此主题进行了相当深入的探讨,但目的更为复杂。

我需要知道是什么原因导致了这种不可行的结果,如何预防它,以及如何在 ASP.NET 4 项目(包括新项目和现有项目)中可靠地配置 typescript,以便这种不可行的情况永远不会发生或可能发生得到快速可靠的纠正。

如果您有任何关于此的信息,或者任何与可能提供部分解释的事物相交的经历,我欢迎您的回复。

最佳答案

我遇到了同样的问题。经过大量试验和错误后,我通过向 tsconfig.json 添加以下选项来修复它:

{
  "compilerOptions": {
    "watch": true
  },
  "include": ["**/*"]
}

关于typescript - 配置 Visual Studio 2015,使 Typescript 虚拟项目永远不会创建 'loose files',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38154278/

相关文章:

typescript - 对于可用于浏览器或节点的 Typescript 模块,我应该使用什么模块构建策略?

css - Angular 2 : How to correctly automatically import normalize. CSS

typescript - Webstorm、TypeScript、Angular2、Transpiler、重复标识符错误消息

javascript - Typescript 中的闭包(依赖注入(inject))

javascript - PatchValue 或 setValue with formGroup 更多 formArray 和 formGroup

angular - 除非提供 '--module' 标志,否则无法编译外部模块

typescript - 如何扩展 'Window' typescript 接口(interface)

intellij-idea - AngularJS 2.0 TypeScript Intellij 想法(或 webstorm) - ES6 导入语法

Angularjs typescript 迁移