web-dev-qa-db-fra.com

Comment puis-je obtenir la sortie console.log de mon mobile SUR le périphérique mobile?

Je travaille beaucoup sur les appareils mobiles. Existe-t-il un moyen d'obtenir un accès js à la sortie console.log à partir de dans un navigateur mobile? 

8
jdmayfield

Actuellement, la meilleure méthode consisterait à «se connecter» à la console native et à afficher la sortie au format HTML, tout en permettant à la sortie d'aller sur la console native.

Vous pouvez implémenter votre propre version très facilement ....

// Reference to an output container, use 'pre' styling for JSON output
var output = document.createElement('pre');
document.body.appendChild(output);

// Reference to native method(s)
var oldLog = console.log;

console.log = function( ...items ) {

    // Call native method first
    oldLog.apply(this,items);

    // Use JSON to transform objects, all others display normally
    items.forEach( (item,i)=>{
        items[i] = (typeof item === 'object' ? JSON.stringify(item,null,4) : item);
    });
    output.innerHTML += items.join(' ') + '<br />';

};

// You could even allow Javascript input...
function consoleInput( data ) {
    // Print it to console as typed
    console.log( data + '<br />' );
    try {
        console.log( eval( data ) );
    } catch (e) {
        console.log( e.stack );
    }
}

.... mais plutôt que de réinventer la roue, il y a quelques projets que vous pourriez être intéressé à essayer.

Personnellement, j'utilise la console de téléphonie mobile de hnlDesign et j'en suis très heureux. C'est simple et juste ce que vous voulez et attendez.

J'ai récemment appris l'existence de Eruda mais je n'ai pas eu l'occasion de le tester, mis à part jouer avec leur démo. Il implémente beaucoup plus d'outils de développement, mais pour cette raison, il pourrait être excessif pour de nombreux projets. Il n’est pas aussi léger (sa taille de fichier est certainement beaucoup plus grande, même minifiée!), Et si vous voulez l’ampleur et l’intensité des outils de développement, il serait préférable d’utiliser le débogage à distance. La plupart d'entre nous qui désirons une console mobile souhaitons simplement les bases pour des tests rapides, etc.

5
Marcus Hughes