Visual Studio 2015 没有将 TypeScript 编译为 ASP.NET Core 项目的一部分?

Posted

技术标签:

【中文标题】Visual Studio 2015 没有将 TypeScript 编译为 ASP.NET Core 项目的一部分?【英文标题】:Visual Studio 2015 not compiling TypeScript as part of a ASP.NET Core project? 【发布时间】:2016-06-15 22:12:45 【问题描述】:

我正在使用 VS2015 并尝试在 ASP.NET Core 项目中使用 TypeScript 生成一个 Angular 应用程序,但无论我尝试什么,我都无法将我的 Angular 虚拟项目转译到 wwwroot 文件夹中,尽管 VS2015 将其识别为 TypeScript 虚拟项目。这是我的项目结构:

这是我的tsconfig.json 文件:


  "compileOnSave": true,
  "compilerOptions": 
    "noImplicitAny": false,
    "noEmitOnError": true,
    "removeComments": false,
    "sourceMap": true,
    "target": "es5",
    "module": "system",
    "experimentalDecorators": true,
    "moduleResolution": "node",
    "outDir": "../../wwwroot/"
  ,
  "exclude": [
    "node_modules",
    "wwwroot"
  ]

VS 不会自动编译它,即使从命令行运行 npm run tsc:w main.ts 也会导致文件未找到错误。如何构建我的 ts 文件?

【问题讨论】:

几周前我用 Angular2 和 ts 讨论过类似的话题。尽管我有点 Visual Studio 纯粹主义者将所有内容与 c# 后端集成在一个地方,但大量阅读令人惊讶地说服我尝试 VS Code 用于前端和 Angular。对我来说,它与 Angular 的无缝集成更加无缝,并且在前端工作的舒适性方面带来了一些非常好的惊喜(特别是与 vs 相比的突破速度) @Turo 很遗憾没有这个选项 我在使用 vs2015 更新 3 时遇到了同样的问题。对我来说,解决方案是手动将 TypeScript 版本设置为 1.7 或更高版本:***.com/questions/39021808/… 【参考方案1】:

您的 outdir 与 tsconfig.json 相关,因此您的路径应类似于:../wwwroot/。这是我自己的 tsconfig.json 的示例:


"compilerOptions": 
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"outFile": "../wwwroot/app/app.js"
  ,
"compileOnSave": true,
"files": [
  "../typings/main.d.ts",
  "app.module.ts",
  "app.config.ts",
  "home.controller.ts",
  "myTeam.controller.ts"
  ] 

我也更喜欢通过 gulp 构建 typescript。我已经发布了两篇关于如何做到这一点的文章:

您可以在此处找到有关如何配置 ASP.NET Core 应用程序以编译 typescript 的完整分步指南: ASP.NET Core: modify an Angular app to use typescript

以及如何使用 Gulp 工作流程执行相同操作: ASP.NET Core: Building Typescript with Gulp

【讨论】:

【参考方案2】:

@EchoLogic,尝试将您的 Angular 文件夹重命名为 scripts,它应该可以工作。

【讨论】:

@SambhavSharma 这不是要求作者提供信息。它提出了一个解决方案。它一个答案。

以上是关于Visual Studio 2015 没有将 TypeScript 编译为 ASP.NET Core 项目的一部分?的主要内容,如果未能解决你的问题,请参考以下文章

将 Admob 添加到 Visual Studio 2015 cordova 项目?

如何将 Visual Studio 2015 Community 下载为 torrent 文件? [关闭]

组合 Visual Studio Code 构建任务

Visual Studio 2015 - 无法添加虚拟目录

将 QCharts 与 Visual Studio 2015 一起使用时未解析的外部符号

visual studio 2015怎样升级