如何在 post 构建事件上开始 Typescript 编译
How to start Typescript compilation on post build event
我有一个 post 构建事件,该事件 运行 对我的一些控制器进行反射代码,以在打字稿中生成我的路线定义。如果我在我的 csproj 中激活 TypescriptCompile 选项,如果任何 Typescript 文件不正确,DLL 生成将失败。然后我的 post 构建事件将失败,因为 dll 不存在。
我想实现以下架构:
- 在没有 typescript 编译的情况下构建我的 dll
- 运行 我的 post 构建事件用我的路由定义生成打字稿文件
- 运行 另一个 post 编译/验证 ts 文件的构建事件如果不正确则失败
前 2 个步骤工作正常,但我卡在了最后一个步骤。在 csproj 文件上找不到 运行 typescript 编译的命令行。
假设在 post-build 事件中,TypeScript 源文件是在 .\tsc-src
下生成的。而且您使用的是 TypeScript 2.0。
您可以在 tsc-src
文件夹中包含一个 tsconfig.json
文件,其内容如下:
{
"compilerOptions": {
"baseUrl": "",
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es6", "dom"],
"mapRoot": "./",
"module": "es6",
"moduleResolution": "node",
"outDir": "../tsc-dist",
"sourceMap": true,
"target": "es5"
}
}
假设您的工作目录在项目文件夹中,如果您已经安装了 TypeScript 并且 tsc
在您的 PATH
中,您可以添加一个新的 post-build 事件命令tsc -p ./tsc-src
编译 TypeScript 源文件。
根据您的要求,您可能希望将 outDir
字段更改为 outFile
字段以发出单个 JavaScript 文件。这是文档的 pointer。
我有一个 post 构建事件,该事件 运行 对我的一些控制器进行反射代码,以在打字稿中生成我的路线定义。如果我在我的 csproj 中激活 TypescriptCompile 选项,如果任何 Typescript 文件不正确,DLL 生成将失败。然后我的 post 构建事件将失败,因为 dll 不存在。
我想实现以下架构:
- 在没有 typescript 编译的情况下构建我的 dll
- 运行 我的 post 构建事件用我的路由定义生成打字稿文件
- 运行 另一个 post 编译/验证 ts 文件的构建事件如果不正确则失败
前 2 个步骤工作正常,但我卡在了最后一个步骤。在 csproj 文件上找不到 运行 typescript 编译的命令行。
假设在 post-build 事件中,TypeScript 源文件是在 .\tsc-src
下生成的。而且您使用的是 TypeScript 2.0。
您可以在 tsc-src
文件夹中包含一个 tsconfig.json
文件,其内容如下:
{
"compilerOptions": {
"baseUrl": "",
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es6", "dom"],
"mapRoot": "./",
"module": "es6",
"moduleResolution": "node",
"outDir": "../tsc-dist",
"sourceMap": true,
"target": "es5"
}
}
假设您的工作目录在项目文件夹中,如果您已经安装了 TypeScript 并且 tsc
在您的 PATH
中,您可以添加一个新的 post-build 事件命令tsc -p ./tsc-src
编译 TypeScript 源文件。
根据您的要求,您可能希望将 outDir
字段更改为 outFile
字段以发出单个 JavaScript 文件。这是文档的 pointer。