如何编译扩展名为* .server.ts的所有文件?

时间:2016-04-05 20:43:44

标签: typescript atom-editor tsc

假设我们有以下文件:

/mymodule1/
   main.server.ts
   main.client.ts

/mymodule2/
   main.server.ts
   main.client.ts

我们如何只编译所有* .server.ts文件但保持* .client.ts文件不变?

我在tsconfig.json中尝试了类似的东西,但它失败了:

  

tsconfig.json,使用 tsc cli 时:

{
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "sourceMap": true
    },
    "files": [
        "**/*.server.ts"
    ]
}

[编辑]

或类似的东西:

  

tsconfig.json,使用 Atom

    {
        "compilerOptions": {
            "target": "es5",
            "module": "commonjs",
            "sourceMap": true
        },
        "filesGlob": [
            "**/*.server.ts" //seams to work, but Atom complains that the other files are not added to the compile context.
        ],
        "exclude": [
           "**/*.client.ts", //fails, as well as in files
            "typings",
            "node_modules"
        ]

    }

是否有 filesExcludeGlob

1 个答案:

答案 0 :(得分:0)

  

tsconfig.json

tsconfig.json本身并不支持files中的 globs

那说atom-typescript支持https://github.com/TypeStrong/atom-typescript/blob/master/docs/tsconfig.md#filesglob,grunt-ts支持它:https://github.com/TypeStrong/grunt-ts

所以在你的身上,你不能只用tsc本地做。

  

是否有filesExcludeGlob

你可以只使用否定:

"filesGlob":[
  "**/*.server.ts",
  "!**/**.client.ts",
]