缩小和合并文件 - 您的开发和发布设置是什么?

时间:2010-09-08 09:01:19

标签: build-process minify yui-compressor

我目前正在使用PHP minify来组合和压缩静态文件(CSS和JS)。使用PHP缩小,开发和部署非常容易。这是因为:

假设有两个文件:a.jsb.js,我们会在ab.js中合并并缩小它们。现在它足以让我只包含一个脚本标记:

<script type="text/javascript" src="http://static.example.com/min/g=ab&amp;v=7"></script>

凭借这种灵活性,我可以在a.js和b.js中进行开发,同时测试最终的缩小版本,而无需更改上面的include标记。发布时我甚至不需要改变。

但是现在我想将我的静态文件移动到CD不在那里的CDN服务器,所以我想在上传之前我必须使用YUI压缩器来缩小和组合。现在如果我将a.js和b.js与YUI压缩器结合起来,我必须更改我以前开发的include标签。

因此在开发时我会使用:

<script type="text/javascript" src="http://static.example.com/a.js"></script>
<script type="text/javascript" src="http://static.example.com/b.js"></script>

上传时我会使用:

<script type="text/javascript" src="http://static.example.com/ab.min.js"></script>

然后它成为一个问题,因为这两行必须合并为一行。您的设置是什么来管理它?

2 个答案:

答案 0 :(得分:0)

在配置文件中指定ab.min.js的基本URL(即http://static.example.com/)。在生产配置中,使用CDN位置。在您的开发配置中,使用自动缩小的位置。

答案 1 :(得分:0)

您似乎对使用不同的基本URL进行开发和制作感到满意,但将两行合并为一个就是您的问题。

如果是这种情况,也许您想将此步骤分成两部分。

  1. 手动将a.js和b.js合并到ab.js中,但不要缩小。你只需要这样做一次。现在,在开发过程中,您可以直接使用ab.js中的源代码。
  2. 在上传之前,通常作为构建过程中的自动步骤,使用YUI压缩器来缩小ab.js.
  3. 如果你想将a.js和b.js分开,那么上面的内容对你不起作用,你可能需要某种预处理器来修改源代码中的脚本标签。

相关问题