5

我在 VS2012 中有两个项目。一个是作为“带有 Typescript 的 HTML 应用程序”创建的,另一个是(一个 DLL),其中我将 Typescript 文件添加到现有项目(我将 BeforeBuild Target 添加到现有项目)。

当我编译 HTML App 项目时,它将 TS 编译为 JS 并添加 JS 作为内容。

当我编译我的 DLL 时,我没有从 TSC 中得到任何结果......无论是在我放置 TS 文件的文件夹中,还是在根目录或任何其他文件夹中......我没有收到任何错误或其他提示可能有什么问题.

在两个项目的属性中,TS 文件显示为:

BuildAction: TypeScriptCompile
Copy to output....: Do not copy

在 .csproj 文件中,项目组内的部分如下所示:

<ItemGroup>
...(Lots of other "EmbeddedResources" in this ItemGroup)
    <TypeScriptCompile Include="C-DCommunication\ClientBin\CDEHTML5\cdeUX5.ts" />
    <Content Include="C-DCommunication\ClientBin\CDEHTML5\cdeUX5.js">
      <DependentUpon>cdeUX5.ts</DependentUpon>
    </Content>
...(more files in my ItemGroup)
</ItemGroup>

在我看来,TSC 编译器没有正确解析路径。有人可以验证吗?

谢谢

4

1 回答 1

1

当我将 TypeScript 添加到现有项目时,我倾向于将以下内容添加到我的项目文件中:

  <ItemGroup>
    <AvailableItemName Include="TypeScriptCompile" />
  </ItemGroup>
  <ItemGroup>
    <TypeScriptCompile Include="$(ProjectDir)\**\*.ts" />
  </ItemGroup>
  <Target Name="BeforeBuild">
    <Exec Command="&quot;$(PROGRAMFILES)\Microsoft SDKs\TypeScript\0.8.0.0\tsc&quot; @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
  </Target>

资源

但是,如果您使用 Web Essentials Visual Studio 扩展,它会在保存时将 TypeScript 编译为 JavaScript,我发现这为开发提供了更好的流程。

于 2012-11-14T09:15:10.097 回答