如何将tinymce和所有插件压缩成静态文件?

时间:2011-10-22 16:43:00

标签: javascript tinymce

用于tinymce的documentation注释,可以将所有javascript和组件(我假设包含插件)压缩到单个文件中。他们确实注意到为什么人们可能也不想这样做。

  

压缩成静态文件

     

也可以简单地将必要的组件和一些样板代码连接到一个.js文件中。但是,如果要使用其他TinyMCE插件或升级TinyMCE,则必须始终重新创建此文件。您可能还希望配置您的网络服务器来压缩javascript文件。

但假设一个人确实想要这样做,那么实际上是怎么做到的呢? Build.xml确实没有提供它看起来合适的任务。至少当我尝试它时,加载tiny_mce.js时似乎没有包含插件。

2 个答案:

答案 0 :(得分:2)

有一些非常出色的命令行工具,但您也可以使用文本编辑器轻松完成此操作。最简单的方法是打开每个文件,复制内容,然后将内容粘贴到一个JS文件中(比如说“everything-all-together.js”)。您需要确保将文件粘贴到单个文件中的顺序与将脚本标记放入HTML文档的顺序相同。一旦将所有文件放在一起,就可以使用JSXMin,YUI Compressor或Google Closure等工具。还有一些在线工具,如http://www.minifyjavascript.com/。您可以粘贴未压缩的JS并复制回压缩的JS。这使得构建过程非常麻烦,但是如果你只需要这样做一次,那就可以帮助你。

执行此操作的最佳方法是将其作为网站的构建步骤。这意味着当您对JS文件进行更改时,您将重建压缩的JS文件以包含更改。如果您快速迭代并一遍又一遍地更改文件,这可能是一个麻烦的步骤。您不希望每次保存都需要重建压缩文件。您可以通过设置站点的开发和生产模式来解决此问题。在开发模式下加载时,JS文件不会组合在一起。完成所有必要的更改后,您将重新运行构建步骤以生成单个压缩的JS文件。要从命令行进行缩小,您可能希望使用Google Closure:https://developers.google.com/closure/compiler/。如果您下载编译器应用程序,则可以执行以下操作:

  

java -jar compiler.jar some-file.js some-other-file.js> compiled.js

这将生成一个名为compiled.js的文件,其中包含一些缩小格式的some-file.js和some-other-file.js的内容。您可以根据需要指定要编译的文件。实际上,我卖掉Closure有点短暂说它只是缩小了。它也是极其优化的代码。除非他们已经做得更好,否则几乎每个网站应该一直在为所有JS做这个。

答案 1 :(得分:0)

我希望我能得到你(和tinymce docs),但这听起来很像在服务器端组合JavaScript文件。这意味着获取所有JS文件的内容,将它们放入一个文件中并将其返回给客户端。

为什么你会这样做?嗯,这应该是显而易见的,但是......你减少了对服务器的HTTP请求数量,这总是一件好事。

你是怎么做到的?所有服务器端语言和框架都有很多解决方案,我建议谷歌搜索“[你的语言] javascript minifier”或类似的东西。

希望这有帮助。