TypeScript编译并保留注释

时间:2012-10-06 09:48:59

标签: typescript tsc

我希望在生成的javascript文件中保留我的注释,默认情况下编译器会删除它们。那有一个tsc参数吗? (用例是保持///参考路径= ...用于chutzpah单元测试。)

6 个答案:

答案 0 :(得分:9)

是,-c(或--comments)选项;

  

语法:tsc [options] [file ..]

     

示例:tsc hello.ts
            tsc --out foo.js foo.ts
            tsc @ args.txt

     

选项:
   -c, - comment向输出发送评论
  ...

答案 1 :(得分:8)

保留以/*!开头的评论。

示例:
/*! this comment remains untouched */
/* but this one will be removed */

答案 2 :(得分:4)

您必须编辑基础.csproj文件并包含-c选项 看看这里:

http://blorkfish.wordpress.com/2012/10/06/including-typescript-comments-in-generated-javascript/

答案 3 :(得分:4)

目前使用1.6.2,默认情况下会显示注释。编译器中唯一与注释相关的标志是删除注释。根据文档:

  

- removeComments
  删除除以/!*

开头的复制右侧标题注释之外的所有注释

答案 4 :(得分:3)

自2015年起,您可以在项目中创建tsconfig.json并将"removeComments": false添加到其"compilerOptions"媒体资源中,以便将评论保存在生成​​的javascript文件中。

1。从终端创建项目的tsconfig.json文件(如有必要)

tsc -init

2。将"removeComments": false添加到tsconfig.json属性

中的"compilerOptions"文件中

最后,您应该期望tsconfig.json文件内容如下:

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "noImplicitAny": false,
        "sourceMap": false,
        "removeComments": false
    },
    "exclude": [
        "node_modules"
    ]
}

3。将.ts文件编译为终端的.js文件

  • 使用tsc myFile.ts以保留您的评论
  • 使用tsc --removeComments myFile.ts删除您的评论

您可以在Typescriptlang.org tsconfig.json page上了解有关tsconfig.json编译器选项的更多信息。

此外,根据Typescript documentation,将truefalse设置为"removeComments"属性不会影响以{{1}开头的版权标题评论}。因此,它们将始终显示在您的/*!文件中。

答案 5 :(得分:1)

Chutzpah 2.2现在本身支持TypeScript,因此您无需担心这一点。您可以直接在.ts文件上运行Chutzpah,它将运行您的测试。