У меня есть сайт, который использует много jquery/javascript. Теперь на странице индекса У меня есть около 10 файлов JavaScript включены в голове:Автоматизация миниатюр Javascript
<head>
<script src="/js/jquery.js"></script>
<script src="/js/jquery_plugin_1.js"></script>
<script src="/js/jquery_plugin_2.js"></script>
<script src="/js/jquery_plugin_3.js"></script>
<script src="/js/my_scripts_1.js"></script>
<script src="/js/my_scripts_2.js"></script>
<script src="/js/my_scripts_3.js"></script>
<script src="/js/my_scripts_4.js"></script>
<!-- ...and so on -->
</head>
Поскольку счетчик посетителей становится все больше, я начинаю думать о выполнении всего этого. Я прочитал, что это хорошая идея, чтобы минимизировать все файлы javascript и собрать их вместе в одном, поэтому браузер должен сделать только один HTTP-запрос. Я сделал это. Теперь у меня есть файл everything.js
, содержащий все javascript, включая jquery, плагины и мои собственные скрипты.
<head>
<!--
<script src="/js/jquery.js"></script>
<script src="/js/jquery_plugin_1.js"></script>
<script src="/js/jquery_plugin_2.js"></script>
<script src="/js/jquery_plugin_3.js"></script>
<script src="/js/my_scripts_1.js"></script>
<script src="/js/my_scripts_2.js"></script>
<script src="/js/my_scripts_3.js"></script>
<script src="/js/my_scripts_4.js"></script>
...
-->
<script src="/js/everything.js"></script>
</head>
Веселье начинается, когда мне нужно внести изменения в один из файлов. Каждый раз, чтобы проверить, работают ли мои изменения как ожидалось, мне нужно сжать файл и обновить everything.js
или раскомментировать весь старый код. С таким видом работы слишком легко забыть что-то и сделать ошибку.
Вопрос: есть автоматическая вещь, которая может отнять эту головную боль? Что-то, что позволило бы мне редактировать мои отдельные файлы, как я привык, и будет минимизировать и собрать все, когда я буду проверять свои изменения?
Я использую PHP5 и SVN
РЕШЕНИЕ
Спасибо за вашу помощь, все, я нашел мое решение: вложу post-commit
крюк в моей SVN репо, который будет принимать все мои файлы .js
, объедините их и уменьшите их с помощью компрессора YUI. Затем в моем сценарии я буду использовать fork javascript, так что в среде разработки сайт будет содержать отдельные файлы javascript, но в процессе будет включен комбинированный и мини-файл.
Вы можете написать сценарий оболочки, который сделает это за вас, собирая все файлы .js в определенном каталоге, затем расчесывая и сжимая результат. – Gumbo 2010-12-08 10:12:58
Я думаю, вы должны проверить, работают ли ваши скрипты нормально, когда они находятся в одном файле. – 2010-12-08 10:13:30