如何在Cordova / PhoneGap中关闭生产的JavaScipt console.log()?在控制台中禁用调试信息可能会大大加快移动应用程序的速度。
有很多方法,但似乎都没有。
覆盖console.log - 例如,Override console.log(); for production
覆盖Cordova DebugConsole.prototype.log - 例如http://iamcam.wordpress.com/2011/07/26/quiet-the-console-phonegap-ios/
任何有效的例子?其他可行的方法?
答案 0 :(得分:1)
包装可能是一种解决方案。如果没有第三方库正在使用实际控制台,并且您只想使用日志方法。
var konsole = {
log: function () {
if (env === 'dev') {
console.log(arguments)
}
}
}
konsole.log('fff');
env是环境变量的替代品,您可以从某种注册表中获取。
答案 1 :(得分:0)
正确的方法是覆盖iOS上默认为Debug Console
的{{1}}插件。该类的子类然后做这样的事情:
CDVDebugConsole
请务必更新- (void)log:(CDVInvokedUrlCommand*)command
{
#ifdef DEBUG
[super log:command];
#endif
}
以使用新插件。
答案 2 :(得分:0)
我建议使用:https://github.com/sunnykgupta/jsLogger
特点:
免责声明:我是该插件的作者。