jQuery как управлять lib-hell’ом?

Вот небольшое решение, также совершенно небольшой проблемы. Предположим у вас есть приложение jQuery, которое использует большое количество библиотек. Как контролировать этот «зверинец»?

По сути, все гениальное просто, я для такого использовал простейшую конструкцию :
вроде

  $jquery_plugins[] = "./js/jquery-ui-1.7.2.custom.min.js";
  $jquery_plugins[] = "./js/timepicker.js";
  $jquery_plugins[] = "./js/jquery.form-2.43.js";
  $jquery_plugins[]= "./js/jquery.jLog.1.0.min.js";

В дальнейшем, в самом «низу» документа модели приложения, непосредственно перед вызовом Smarty, или другого шаблонизатора, или вообще перед выводом «в браузер».

if ( isset ($jquery_plugins ) && is_array($jquery_plugins ) && count($jquery_plugins ) )
  $smarty->assign ( "jquery_plugins", $jquery_plugins  );

Код несколько избыточный, по сути это мой стиль. В шаблоне вывод выглядит проще некуда:

{section name=jp loop=$jquery_plugins}
   <script src="{$jquery_plugins[jp]}" type="text/javascript"><!--mce:0--></script>
{/section}

По сути, конструкция простейшая, и казалось бы — где тут упрощение (нелегкой судьбы) программиста? Так вот, — упрощение можно сделать более наглядным с помощью:

glob( «./js/*.js» as $f)
if (is_file($f))
$jquery_plugins[] = $f

Лично я не люблю автозаполняемые конструкции, ведь они упрощают в одном, но создают проблемы в глобальном плане. Поэтому предпочитаю указывать порядок js-библиотек, старомодно-вручную …

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *