我有一个关于使用tsc
命令和参数--build --clean
的问题,我知道该命令用于清除/删除之前由Transpiler(tsc)生成的 .js
文件。
这个命令有什么特别之处或重要性?如果我需要删除所有的.js
文件,我可以在目录中轻松完成它,只需使用rm -rf *.js
或 del *.js
命令即可。
是否还有其他遗漏的部分需要补充?请教一下。
我有一个关于使用tsc
命令和参数--build --clean
的问题,我知道该命令用于清除/删除之前由Transpiler(tsc)生成的 .js
文件。
这个命令有什么特别之处或重要性?如果我需要删除所有的.js
文件,我可以在目录中轻松完成它,只需使用rm -rf *.js
或 del *.js
命令即可。
是否还有其他遗漏的部分需要补充?请教一下。
rm
命令会毫不犹豫地删除任何文件,即使这些文件并不是由TypeScript转译生成的。tsc --build --clean
命令只会删除那些有对应的 .ts
文件生成的 .js
文件。这意味着,如果你重命名了 .ts
文件、删除了 .ts
文件或者创建了新的 .ts
文件,然后运行 tsc --build --clean
命令,之前有对应 .ts
文件的旧的 .js
文件将不再被删除。.ts
文件集合发生变化时,你应该使用其他方式删除输出文件夹。例如,在 Unix shell 中使用 rm -rf dist/
命令,或者在 Windows PowerShell 中使用 rm -r -fo dist/
命令。或者,假设你使用 TypeScript,很可能也在使用 Node.js,可以使用一个跨平台的包,比如 rimraf
,来删除输出文件夹。通常情况下,--clean
没有什么用处。如果你曾经重命名、移动或删除过源文件,那么 clean 命令将不能清理已编译的输出文件。
tsc
知道你的项目有哪些.ts
文件,因此它知道在构建时会创建哪些.js
文件。这些文件是--clean
将要删除的文件。 - ruoholatsc
以获取dummy.js,然后在运行tsc --build --clean
之前删除了原始的dummy.tsc,只是为了发现dummy.js文件保持不变 :) 所以这就是答案?感谢您提供的好场景供我们玩耍!还有其他区别吗,或者就是这些? - itsraghzdummy.ts
和dummy.js
,--clean
将会删除.js
文件,即使它实际上并不是通过构建 TypeScript 创建的。 - ruohola