1

我经常在模板时使用空函数作为 HereDoc 块。

var heredoc = function() {/*
  <div>
    Hello World!
  </div>
*/};

UglifyJS2 压缩器删除所有注释,这通常是可取的。除了这个!我想在命令行上使用“--comments”,在评论块中使用“/** @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();

将评论放置在内部或外部;是否直接调用该函数。没有任何工作。

丑化-js 2.6.1

4

1 回答 1

1

这不是一个非常可接受的答案,但无论如何我都会提供它。

这是有效的:

var heredoc = function() {/** @preserve
  <div>
    Hello World!
  </div>
*/""};

阅读另一个问题后,我在底部添加了空字符串:

UglifyJS2 删除块或文件末尾的想要的注释

但是,它没有使用正则表达式。我不得不使用 jsdoc @preserve 标签。

于 2015-12-14T08:01:15.980 回答