我正在构建Cordova 3.5.0应用程序。我使用grunt构建一个缩小的Web应用程序,然后我使用cordova CLI和cordova钩子来构建一个特定于平台的包。我使用了10多个不同的插件,一些Cordova官方插件和一些自定义插件。我想知道如何连接和缩小插件中的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
});
我知道如何使用这些插件缩小和生成单个文件,但不知道如何调整cordova构建过程以从单个文件但不同的包中获取所有clobbers。我的第一个想法是所有过程都必须在platforms/<platform>/assets/www
文件夹
答案 0 :(得分:1)
缩小确实可以提高性能,原因有两个:
缩小文件大小(因为它会删除注释和不必要的空格),因此您的脚本加载速度更快。即使它嵌入了。
解析速度更快,因为评论和空格不必明确忽略(因为它们不存在)。
但是,如果文件很大(2000行或更多),就像jquery一样,它只会产生真正的不同。没有必要缩小20行文件。