如何告诉 TypeScript 编译器从 Visual Studio 中生成 amd 模块(--module amd)。
谢谢。
在您的项目文件中,您将需要更改正在构建 TypeScript 文件的 MSBuild 目标。如果您使用“使用 TypeScript 构建的 HTML 应用程序”的默认模板,请卸载您的项目,编辑项目文件,您会发现一个名为“BeforeBuild”的目标在“$(PROGRAMFILES)\Microsoft SDKs\TypeScript 处调用编译器” \0.8.0.0\tsc",添加 --module amd 到它;保存并重新加载您的项目。下次构建时,您应该会看到命令参数正确传递给编译器。
在最新的 Visual Studio 2013 Update 3 + WebEssentials 上,选项现在(最终)正确地移动到了项目选项窗格中(右键单击项目 -> 选项 -> TypeScript 构建窗格)。
因为即使对于 TS 1.0 和 VS 2013 Update 3 的 WebEssentials,这个问题仍然存在,请在此处查看此解决方案:http://icanmakethiswork.blogspot.com/2014/02/typescript-and-requirejs-keep-it-simple.html
或很快:
1) 打开项目文件。
2)找到这行:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
3)在之前插入此行:
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptModuleKind>amd</TypeScriptModuleKind>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<TypeScriptModuleKind>amd</TypeScriptModuleKind>
</PropertyGroup>