7

可能是我错过了这个(或者可能是我太累了:P)。在 Typescript 项目的 Visual Studio 2012 中,当我重命名一个 ts 文件时,不是重命名与该 ts 文件链接的 js 文件,而是创建一个新文件。

例如:
旧情况:(file1.ts --> file1.js) 重命名后:(file1337.ts --> file.js) + file1337.js //file1337 不包含在项目中,我需要手动执行...

那么有没有一种方法可以同时重命名 ts 文件和直接与该文件链接的 js,而无需创建新文件并且必须在项目中手动添加新的 js 文件?

谢谢

4

3 回答 3

5

我发现如果删除关联的 .js 文件和任何源映射(即在解决方案资源管理器中删除嵌套在 .ts 内的文件),然后重命名 .ts 文件,然后重新编译,会重新生成 .js 文件使用新名称,并自动添加到项目中(只要 .ts 文件已经存在)。

我应该补充一点,我已经安装了WebEssentials - 我不知道这种行为有多少是由于这个,以及有多少是 VS 原生的。

于 2012-11-07T09:28:36.593 回答
1

Visual Studio 扩展中存在细微的差距,这意味着重命名没有得到完美处理。

最简单的选择是创建一个具有正确名称的新文件,移动内容并删除旧文件。

稍微困难的选项是在重命名后手动编辑项目文件以更新关联。

使用 Web Essentials,您会遇到类似的问题,即重命名的文件与错误命名的 JavaScript 和 Map 文件相关联,您必须对其进行调整才能使其正常工作。仍然感觉最干净的选择是添加一个新文件并传输内容而不是重命名。

于 2012-11-07T08:57:43.463 回答
1

这是一个老问题,但在 Visual Studio 2015 中也存在这个问题。在项目 BuildEvents Pre-build 事件命令行中,您可以插入以下代码:

del /S /Q "$(ProjectDir)\path\to\ts\code\*.js" && del /S /Q "$(ProjectDir)\path\to\ts\code\*.js.map"

此命令将在项目构建之前删除所有生成的 .js 和 .js.map 文件。

于 2015-09-01T11:30:24.383 回答