UNPKG

rn-boat-vconsole

Version:

###Description show log in your rn app ^_^

55 lines (51 loc) 2.13 kB
import deviceLog from "./debug-service"; import InMemoryAdapter from "./adapters/in-memory"; export default class ConsoleHooker { constructor() { this.hook = () => { deviceLog.init(new InMemoryAdapter(), { //Options (all optional): logToConsole: true, logRNErrors: true, maxNumberToRender: 2000, maxNumberToPersist: 2000 // 0 or undefined == unlimited }).then(() => { //When the deviceLog has been initialized we can clear it if we want to: //deviceLog.clear(); }); //The device-log contains a timer for measuring performance: deviceLog.startTimer('start-up'); this.logT = console['trace']; this.logD = console['debug']; this.logI = console['info']; this.logW = console['warn']; this.logE = console['error']; this.logErrorOriginal = console['_errorOriginal']; console['log'] = (...params) => { this.logI(...params, '|hooked by consoleHooker'); deviceLog.log(...params); }; console['trace'] = (...params) => { this.logT(...params, '|hooked by consoleHooker'); }; console['debug'] = (...params) => { this.logD(...params, '|hooked by consoleHooker'); deviceLog.debug(...params); }; console['info'] = (...params) => { this.logI(...params, '|hooked by consoleHooker'); deviceLog.info(...params); }; console['warn'] = (...params) => { this.logW(...params, '|hooked by consoleHooker'); }; console['error'] = (...params) => { this.logE(...params, '|hooked by consoleHooker'); deviceLog.error(...params); }; console['_errorOriginal'] = (...params) => { this.logErrorOriginal(...params, '|hooked by consoleHooker'); }; }; } }