我正在使用typescript 1.5和VS 2015 RC以及新的ASP.NET 5项目模板。 打字稿编译得很好但是我在导出的类上遇到以下错误:
除非提供“-module”标志,否则无法编译外部模块
我想要保持这个错误,但我无法通过VS 2015指定任何打字稿选项。我也试过tsconfig.json
文件,但似乎只添加此文件无效。也许还有一个我缺少的额外步骤。我该怎么办?
答案 0 :(得分:1)
通常,此设置位于项目属性中TypeScript构建选项卡的项目属性中(对于当前的构建配置,例如Debug或Release)。
由于您说没有出现TypeScript构建选项卡,因此您可能没有对项目中TypeScript“props”文件的有效引用。在.csproj
或类似文件中查找这样的行:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
如果它不存在,请将其添加到项目中,然后修复路径以正确安装Visual Studio和TypeScript(只需在硬盘上搜索“Microsoft.TypeScript.Default.props”文件)驾驶)。重新加载项目时,应显示TypeScript构建属性选项卡。
您需要的另一件事是对TypeScript“targets”文件的引用,例如:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
请注意,目标参考通常必须在项目中尽可能低 - 甚至可能在</Project>
标记之前。
Visual Studio中TypeScript的初始化依赖于现有的.props和.targets文件,因此也可能是问题。