Установка jQuery-Mobile через беседу
В моем проекте я хотел бы использовать jquery-mobile через bower.
Прежде чем я смогу использовать его, я должен запустить npm install
и grunt
впоследствии внутри bower_components/jquery-mobile
, прежде чем использовать мини файлы .js
и .css
.
Это довольно утомительно, и если бы мне пришлось делать это для каждой библиотеки, которую я использую, я бы предпочел бы просто сбрасывать файлы и добавлять их в свой проект.
Итак, есть ли более элегантный способ добраться до этих "финальных" файлов с помощью зависимости бауэр?
Мой bower.json
"dependencies": {
...
"jquery-mobile": "latest",
}
Ответы
Ответ 1
Тот факт, что нужно запустить процесс npm/grunt (или нет), зависит от каждого автора. В случае с jQuery Mobile, возможно, какой-то внешний пользователь зарегистрировал его, не заметив, что ему нужно запускать задачи Grunt; Bower, к сожалению, позволяет всем регистрировать пакеты (это плохо или хорошо?: S).
Кроме того, может существовать какая-то задача Grunt для установки зависимостей бауэров и выполнения их задач Grunt; если нет, это не слишком сложно создать.
В любом случае, поскольку кажется, что вы в спешке для этих окончательных, скомпилированных файлов, есть jquery-mobile-bower, который был создан и зарегистрирован в Бауэр несколько часов назад.
bower install jquery-mobile-bower
Надеемся, что это будет поддерживаться и обновляться.
Ответ 2
Просто, чтобы вы знали, есть официальный пакет jQuery для мобильных Bower. Его можно установить через:
bower install jquery-mobile
Его конечную точку GitHub можно найти здесь.
Ответ 3
Я не уверен, что мое решение оптимально, но я удалил jquery-mobile
из bower.json
, и я устанавливаю его и создаю с помощью Grunt
, используя плагины grunt-contrib-clean
, grunt-git
и grunt-run
, Я придумал это, потому что я не хочу использовать jquery-mobile-bower
, потому что это неофициальное репо.
Вот пример Gruntfile.js
:
module.exports = function (grunt) {
grunt.initConfig({
clean: {
jquerymobile: 'bower_components/jquery-mobile'
},
gitclone: {
jquerymobile: {
options: {
repository: 'https://github.com/jquery/jquery-mobile.git',
branch: 'master',
directory: 'bower_components/jquery-mobile'
}
}
},
run: {
options: {
cwd: "bower_components/jquery-mobile"
},
jquerymobile_npm_install: {
cmd: "npm",
args: [
'install'
]
},
jquerymobile_grunt: {
cmd: "grunt"
}
}
});
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-git');
grunt.loadNpmTasks('grunt-run');
grunt.registerTask('default', [
'clean',
'gitclone',
'run'
]);
};
Более подробную информацию можно найти здесь https://github.com/jquery/jquery-mobile/issues/7554