оно?The first command installs the composer asset plugin which allows managing bower and npm package dependencies through Composer. You only need to run this command once for all. The second command installs Yii in a directory named basic. You can choose a different directory name if you want.
Что не привествуешь? Пакетный менеджер? Гораздо проще управлять пакетами JS - Бутстрап, и Wow и Font Awesome, и еще масса свистелок и перделок. Я в Linux сижу и мне так удобнее)) просто делаю комманду bower install animate и тот сам все что надо качает, и устанавливает, с зависимостями. Надо обновить - делаю bower update font-awesome.
~/bower_components# cat jquery-bridget/bower.json
{
"name": "jquery-bridget",
"version": "1.0.1",
"main": "jquery.bridget.js",
"description": "Bridget makes jQuery widgets",
"devDependencies": {
"jquery": ">=1.4.2",
"qunit": "~1.10"
}
}
cat jquery.nicescroll/bower.json
{
"name": "jquery.nicescroll",
"version": "3.5.4",
"main": [
"./jquery.nicescroll.js",
"./zoomico.png"
],
"ignore": [
"**/.*",
"demo",
"package.json"
],
"dependencies": {
"jquery": ">=1.4.3"
}
}
cat jquery-minicolors/component.json
{
"name" : "jquery-minicolors",
"version" : "2.1.10",
"description" : "jQuery MiniColors Plugin",
"homepage" : "",
"main" : [ "./jquery.minicolors.js", "./jquery.minicolors.css" ],
"dependencies" : {
"jquery" : ">= 1.7.x"
},
"keywords" : [
],
"author" : {
"name" : "Cory LaViska",
"web" : "http://www.abeautifulsite.net/"
},
"license": [
"http://www.opensource.org/licenses/mit-license.php"
]
}
bower, grunt пофиг - сами менеджеры пакетов приветствую, как stand-alone решения, не приветствую сброку и добавление зависимостей из пыхаЧто не привествуешь? Пакетный менеджер? Гораздо проще управлять пакетами JS - Бутстрап, и Wow и Font Awesome, и еще масса свистелок и перделок. Я в Linux сижу и мне так удобнее)) просто делаю комманду bower install animate и тот сам все что надо качает, и устанавливает, с зависимостями. Надо обновить - делаю bower update font-awesome.
Конфликты? Например?Так рулить неправильно.
Подключишь один, второй. Оба хотят jQuery. Надо решать такие конфликты. Потом захочешь все-таки нормально оптимизировать статику и это превратится в сущий гемор, ибо при оптимизации(собирание всех файлов с зависимостями в один, например) рулить конфликтами типа jQuery уже крайне сложно. Мне кажется эту проблему лучше решать отдельно. bower решает свою, узкоспециализированную, задачу.
jquery один, зачем его дважды подключать? проблему зависимостей решает сам bower$layout->addBowerPkg("jqueryui");
...
$layout->addBowerPkg("jquery.another.awesome.plugin");
Оба хотят jquery.js. Пока подключается пофайлово.. можно и разрулить. а вот когда он все эти бандлы начнет собирать в один файл для оптимизации то jquery будет подключен в оба. И как рулить такое я не знаю.
Upd: тут я понял, что варианты есть.. но зачем усложнять? Не проще самому правильно сконфигурировать подключаемую статику?
$layout->addBowerPkg("jquery.plugin1");
...
$layout->addBowerPkg("jquery.plugin2");
<script src="jquery.js"...
<script src="jquery.plugin1.js"...
....
<!-- тут он понимает что jquery он уже подключал. Поэтому не будет делать это еще раз. -->
<script src="jquery.plugin2.js"...
<script src="/bundle.php?files=jquery.js,jquery.plugin1.js,jquery.plugin2.js"...
"jquery" : ">= 1.7.x"
....
"jquery" : "< 1.6.x"
По поводу версий jquery - это еще на этапе установки пакета пакетным менеджером вылезет, типа конфликт версий. Что касается "bundle.php" - это не проблема. Я перекладываю эту заботу на модуль apache (nginx) pagespeed ( https://developers.google.com/speed/pagespeed/module ) . Помимо минимизации трафика путем объединения множества файлов (js и css) и их упавковки, он еще засовывает мелкие изображения в сам HTML ( <input src="base64:blabla"> ), увеличивая загрузку за счет снижения DNS и общего количества запросов.Это самый простой вариант. Но так не делают. Все давно уже собирают в бандлы..
...
...Код:<script src="/bundle.php?files=jquery.js,jquery.plugin1.js,jquery.plugin2.js"...
Ну ладна. наверно идея имеет право на жизнь. Нужно только анализировать грамотно. Если не возникнет проблем типа:
Код:"jquery" : ">= 1.7.x" .... "jquery" : "< 1.6.x"
![]()