在模板化时,我经常使用空函数作为 HereDoc block 。
var heredoc = function() {/*
<div>
Hello World!
</div>
*/};
UglifyJS2 压缩器会删除所有注释,这通常是可取的。除了这个!我想在命令行上使用“--comments”,在注释 block 中使用“/** @preserve”,但这不起作用。我也尝试过正则表达式。这是我在上面的 JS 文件上尝试的特定命令:
uglifyjs test.js -o test.min.js -p 5 -c -m --comments /div/i
结果如下:
var heredoc=function(){};
我发现很难让任何正则表达式起作用......
/* div keep me */
var heredoc = function() {/** @preserve
<div>
Hello World!
</div>
*/};
heredoc();
评论放置在内部或外部;直接或不直接调用该函数。什么都不起作用。
uglify-js 2.6.1
最佳答案
这不是一个很容易接受的答案,但无论如何我都会提供它。
这正在工作:
var heredoc = function() {/** @preserve
<div>
Hello World!
</div>
*/""};
在阅读另一个问题后,我在底部添加了空字符串:
UglifyJS2 removes wanted comments at the end of a block or file
但是,使用正则表达式不起作用。我必须使用 jsdoc @preserve 标签。
关于javascript - 如何使用 UglifyJS2 保留函数内部的 HereDoc 风格注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34261849/