在Browserify输出中隐藏本地文件名?

4
当您使用Browserify捆绑您的代码时,每个模块都会被内联到生成的输出中,并标记有其本地文件路径。因此,您可以在捆绑的代码中看到文件路径字符串。
但是理论上,这些字符串可以全部重写为“1”、“2”等,这在某些情况下可能是一种安全优势(并且可以节省一些字节)。
是否有任何选项或某些转换可以实现这一点?(它必须重新编写每个内联模块的标签以及所有相应的require调用。)

你使用什么来调用browserify?我自己也遇到了这个问题,但只有在使用gulp-browserify并且将insertGlobals设置为true时才会出现。似乎https://github.com/substack/node-browserify node-browserify有一个--insert-globals参数可能会导致这种情况。 - HighlyUnavailable
我也遇到了同样的问题。但只有在使用全局转换时才会出现,我可以通过设置 insertGlobals: true 来解决它,不过这会增加文件大小。 - Thomas Jensen
我认为bundle-collapser正是一年前你所需要的东西。 - kazet
2个回答

1

看起来,在你提问后的6个月里,Browserify的作者James Halliday发布了Bundle Collapser。它几乎完全实现了我们的要求。


-1

插入全局变量选项可以通过以下任何别名启用

--insert-globals --ig --fast

如果您删除所有这些别名,则构建可能会稍微慢一些,但它将删除名称。


1
这似乎不会影响输出中的模块标识符。我总是在使用browserify 3.38.1时在输出中获得完整的文件路径字符串。 - naugtur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接