объединяя ЛАБйс и Модернизр и Йепнопейс - PullRequest
2 голосов
/ 06 ноября 2011

Я использовал LABjs , и он работает хорошо.

Я сейчас пытаюсь использовать удивительный Modernizr и обратите внимание, что он использует yepnopejs для условной загрузки ресурса.

Так как я хочу условную загрузку, могу ли я использовать LABjs и yepnopejs вместе? Или я должен выбрать один исключительно? Если у кого-то есть опыт совместного использования, я буду признателен за ваш отзыв. Спасибо!

1 Ответ

3 голосов
/ 18 ноября 2011

LABjs может выполнять условную загрузку, точно так же, как это может делать yepnope (у него просто не такой привлекательный API для этого, как у yepnope).

$LAB.script(typeof JSON == "undefined" ? "json2.js" : false).wait()
.script("myotherscript.js");

-или-

$LAB.script(function(){
   if (typeof JSON == "undefined") return "json2.js";
})
.wait()
.script("myotherscript.js");

Итак, вы должны иметь возможность выполнять загрузку с помощью LABjs, а ваши средства тестирования функций HTML5 - с помощью modernizr.


Теперь жаль, что modernizr также поставляется с yepnope, и это приводит к тому, что загружается немного больше кода, чем вам нужно, поскольку у вас есть два загрузчика. В этом случае вы можете отказаться от LABjs и использовать только yepnope, или вы можете просто пропустить эту незначительную проблему (пока *).

Я настоятельно рекомендую остаться с LABjs, так как его функциональность загрузки под крышками более надежна / ориентирована на будущее (но не настолько широка), чем у yepnope.

* Я планирую выпустить "yeahno.js", который будет LABjs внизу, с API yepnope поверх него, чтобы получить лучшее из обоих миров. Затем вы можете загружать modernizr, yepnope (API) и LABjs все в одном, без дополнительных затрат. Оставайтесь с нами на http://github.com/getify/yeahno.js.

...