Объединить и минимизировать файлы плагинов cordova/phonegap
Я создаю приложение Cordova 3.5.0. Я использую grunt для создания миниатюрного веб-приложения, затем я использую cordova CLI и cordova hooks для создания пакета конкретной платформы. Я использую более 10 различных плагинов, некоторые официальные Кордовы и некоторые обычаи. Мне интересно, как объединить и минимизировать JS файлы из плагинов с моими другими сторонними библиотеками.
После выполнения cordova prepare
я вижу сгенерированный файл cordova_plugins.js
со следующим содержимым:
cordova.define('cordova/plugin_list', function(require, exports, module) {
module.exports = [
{
"file": "plugins/org.apache.cordova.globalization/www/GlobalizationError.js",
"id": "org.apache.cordova.globalization.GlobalizationError",
"clobbers": [
"window.GlobalizationError"
]
},
{
"file": "plugins/org.apache.cordova.globalization/www/globalization.js",
"id": "org.apache.cordova.globalization.globalization",
"clobbers": [
"navigator.globalization"
]
}
];
module.exports.metadata =
// TOP OF METADATA
{
"org.apache.cordova.globalization": "0.3.1"
}
// BOTTOM OF METADATA
});
Я знаю, как минимизировать и генерировать один файл с этими плагинами, но не как настроить процесс сборки кордоны, чтобы получить все clobbers из одного файла, но с разными пакетами. Моя первая мысль заключается в том, что весь процесс должен выполняться на этапе AFTER_PREPARE внутри папки platforms/<platform>/assets/www
Ответы
Ответ 1
Минимизация улучшает производительность по двум причинам:
Уменьшен размер файла (поскольку он удаляет комментарии и ненужные пробелы), поэтому ваш script загружается быстрее. Даже если он встроен в.
Он анализируется быстрее, поскольку комментарии и пробелы не должны явно игнорироваться (поскольку их там нет).
НО, это будет иметь реальное значение, если файл большой (2000 строк и более), например jquery. Нет смысла минировать 20-строчный файл.