如何在VS2015项目中提供模块标志?

时间:2015-08-11 08:49:19

标签: typescript visual-studio-2015

我使用VS2015在webproject中创建了一个新的.ts文件。在TypeScript Build I项目的属性中,我检查了Module System = AMD。

然后在尝试编写外部模块时,我收到以下错误。

  

除非' - 模块'否则无法编译模块。提供标志。

我在哪里提供moduel标志?

3 个答案:

答案 0 :(得分:6)

我无法使它发挥作用。无论我在打字稿部分改变了什么 - 它在构建时都被忽略了。

如果我将详细程度设置为详细信息在工具中 - >选项 - >构建并运行我可以看到我的所有设置都被忽略,包括-module标记。

就像解决方法一样。 在根目录中创建tsconfig.json文件。并添加预构建事件“tsc”命令。在这种情况下它工作得很好。

{
  "compilerOptions": {
    "module": "commonjs",
    "noImplicitAny": true,
    "removeComments": true,
    "preserveConstEnums": true,
    "sourceMap": true
  }
}

enter image description here

答案 1 :(得分:6)

似乎是带有VS2015 RTM的bug。项目TypeScript设置未正确保存到.csproj文件中,因此TypeScript编译器无法读取它们。

修复:

  1. 右键单击项目,将其卸载,然后再次右键单击并进行编辑。
  2. 搜索class Foo(HasTraits): my_str = Str() traits_view = View( Item('my_str', style='custom', editor=TextEditor( auto_set=False, enter_set=True, ), ), Item('my_str', style='readonly' ), ) if __name__ == '__main__': f = Foo() f.configure_traits() ,然后找到父元素,该元素应称为<TypeScriptModuleKind>
  3. 查找文字&#34; <PropertyGroup>&#34;在Any CPU属性值中,将其更改为&#34; Condition&#34; - 即删除空间。
  4. 再次搜索并重复更改,以防其他构建条件具有TypeScript设置。
  5. 请注意,在修复此错误之前,您需要编辑.csproj文件以修改TypeScript设置。如果您尝试从项目设置区域进行更改,它将仅在项目文件中生成具有错误条件值的新设置。

    此外,您可能正在阅读有关使用tsconfig.json文件而不是提供VS2015中的设置的信息。但是,似乎此功能目前仅针对网站项目类型实现,而不是针对Web应用程序项目实现。

答案 2 :(得分:1)

您已更新了正确的设置 - 项目属性确实具有每个构建配置的设置,因此请确保您还勾选了&#34; AMD&#34;在每个配置下(例如,调试和发布)。

在配置之间切换时,我常常被这种情况所困扰。