gpt4 book ai didi

build-process - CoffeeScript/UglifyJS 中的条件编译

转载 作者:行者123 更新时间:2023-12-04 02:10:28 27 4
gpt4 key购买 nike

使用 Coffeescript 无论如何我都需要通过一个构建脚本来更新我的 .js 文件,我有两个,一个用于调试,一个用于生产(一个使用 Uglify 来最小化文件,一个没有)。所以我想如果有一些条件编译也很方便,代码只进入调试版本。

实现这一目标的最简单方法是什么,最好是通过一个简单的命令行开关来控制,我可以给咖啡或 uglify 提供这个开关?

最佳答案

如果您正在编写构建脚本,则可以向其中添加预处理器步骤。由于 CoffeeScript 使用 #为了表示注释,C 预处理器似乎是一个不错的选择。您可以用 #ifdef 表示调试代码s:

some code...
#ifdef DEBUG
debug code...
#endif

然后,您可以使用 cpp -E -Xpreprocessor -DDEBUG <filename> -o <outfile> 预处理调试版本并编译 <outfile>使用 CoffeeScript。同样,使用 cpp -E <filename> -o <outfile> 预处理生产版本.

编辑:这很难,因为这意味着任何未缩进的 CoffeeScript 注释都会破坏预处理步骤。不知道这对你来说有多大的问题。例如,
code...
#comment about the code

会破坏构建,但是
code...
indented code...
#indented comment

会正常工作,因为预处理器不会查看行,除非它们的第一个字符是 # .

关于build-process - CoffeeScript/UglifyJS 中的条件编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9695207/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com