【发布时间】:2015-08-22 04:31:15
【问题描述】:
当我将 *.ts 文件添加到 Visual Studio 2015 并进行编译时,*.js 文件不是 *.ts 的代码隐藏文件。它只是驻留在文件夹中,而不是 Visual Studio 项目的一部分。
这是设计使然还是我在项目中破坏了某些东西?
如果是设计,背后的动机是什么? (如果我想查看文件,我必须显示隐藏文件并最终点击刷新按钮...)
【问题讨论】:
标签: typescript visual-studio-2015
当我将 *.ts 文件添加到 Visual Studio 2015 并进行编译时,*.js 文件不是 *.ts 的代码隐藏文件。它只是驻留在文件夹中,而不是 Visual Studio 项目的一部分。
这是设计使然还是我在项目中破坏了某些东西?
如果是设计,背后的动机是什么? (如果我想查看文件,我必须显示隐藏文件并最终点击刷新按钮...)
【问题讨论】:
标签: typescript visual-studio-2015
这是设计使然 - JavaScript 文件是构建工件,就像 DLL 一样。
这个想法是您签入您的 TypeScript 代码并允许构建服务器创建您的 JavaScript 文件。虽然您可能在“调试”模式下运行,但构建服务器可以在“发布”模式下生成它们,这可能会启用更多优化。
【讨论】:
我不知道这是不是故意的。
如果您想在项目中包含 JavaScript 文件,您需要手动编辑项目文件。在记事本(或您喜欢的文本编辑器)中打开它并执行以下操作;
<Content Include="Scripts\yourfile.ts" />
<Content Include="Scripts\yourfile.js">
<DependentUpon>yourfile.ts</DependentUpon>
</Content>
JavaScript 文件现在应该被拉入。
您会希望这是您正在使用 Visual Studio 将您的项目发布到部署。
【讨论】:
如果您想更改 .js 文件的输出文件夹,请考虑将 tsconf.json 文件添加到您的源文件夹。 这样您就可以配置输出的 .js 文件在哪里结束。
例如:
{
"compilerOptions": {
"target": "es5",
"out": "www/scripts/appBundle.js",
"sourceMap": true,
"removeComments": true,
"sourceRoot": "/"
}
}
tsconfig.json 的文档可以在 github 上的 page 找到。
【讨论】: