IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NodeJS Discussion :

Express/Pug: Comment empêcher le formatage de mon code HTML ?


Sujet :

NodeJS

  1. #1
    Membre expert

    Avatar de Songbird
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Juin 2015
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 493
    Points : 3 872
    Points
    3 872
    Billets dans le blog
    8
    Par défaut Express/Pug: Comment empêcher le formatage de mon code HTML ?
    Lorsque je route l’une de mes pages, le code HTML généré par Pug est minifié (les whitespace sont supprimés, tout du moins). Même en assignant "development" à NODE_ENV, Express ne semble pas changer quoi que ce soit lorsqu’il passe la main au préprocesseur. Je me retrouve donc avec du code HTML prêt pour de la production mais assez peu lisible.

    Quelqu’un aurait déjà rencontré ce problème ? Si oui, auriez-vous une idée pour le résoudre ?

    Merci d’avance !

    Version utilisée d’Express: 4.16.0
    Avant de poster: FAQ Rust; FAQ Dart; FAQ Java; FAQ JavaFX.
    Vous souhaiteriez vous introduire au langage Rust ? C'est par ici ou ici !
    Une question à propos du langage ? N'hésitez pas à vous rendre sur le forum !


    Pour contribuer à la rubrique, vous pouvez me contacter par MP (Sorry, we're closed!) ou contacter directement la rédaction.

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    as tu regardé l'explication fournie : Whitespace Control et la solution recommandée ?

  3. #3
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    On peut le faire comme ça : quelque part avant la (dernière) ligne de module.exports dans l'application app.js, on met une ligne comme ceci...
    Code node.js : Sélectionner tout - Visualiser dans une fenêtre à part
    app.locals.pretty=app.get('env')==='development'?true:false;
    avec app, bien entendu, etant require('express')() comme souvent écrit.

    Pour l'application auto-générée, avant l'y mettre, on a la source de la page comme ceci.
    Nom : pagesource_default.png
Affichages : 218
Taille : 34,5 Ko
    et après on a ceci.
    Nom : pagesource_after.png
Affichages : 182
Taille : 39,4 Ko
    Voilà l'effet.

  4. #4
    Membre expert

    Avatar de Songbird
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Juin 2015
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2015
    Messages : 493
    Points : 3 872
    Points
    3 872
    Billets dans le blog
    8
    Par défaut
    Salut,

    Citation Envoyé par NoSmoking Voir le message
    Bonjour,
    as tu regardé l'explication fournie : Whitespace Control et la solution recommandée ?
    Ce n'est pas l'indentation de la source qui pose problème mais le comportement du transpilateur qui produit un html préparé pour la production. J'ai remarqué qu'il y avait un argument pretty mais étant très débutant avec Express, je ne savais pas comment accéder à ses arguments et les modifier pour que le framework prenne tout ça en compte.

    Citation Envoyé par tsuji Voir le message
    On peut le faire comme ça : quelque part avant la (dernière) ligne de module.exports dans l'application app.js, on met une ligne comme ceci...
    Code node.js : Sélectionner tout - Visualiser dans une fenêtre à part
    app.locals.pretty=app.get('env')==='development'?true:false;
    avec app, bien entendu, etant require('express')() comme souvent écrit.

    Pour l'application auto-générée, avant l'y mettre, on a la source de la page comme ceci.
    [...]
    et après on a ceci.
    [...]
    Voilà l'effet.
    Génial, je viens de faire la modification de mon côté et tout fonctionne. C'est bien plus pratique que la console lorsqu'on ne veut pas voir les injections de balises faites par JS.

    Merci à vous deux, bonne journée !
    Avant de poster: FAQ Rust; FAQ Dart; FAQ Java; FAQ JavaFX.
    Vous souhaiteriez vous introduire au langage Rust ? C'est par ici ou ici !
    Une question à propos du langage ? N'hésitez pas à vous rendre sur le forum !


    Pour contribuer à la rubrique, vous pouvez me contacter par MP (Sorry, we're closed!) ou contacter directement la rédaction.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Vxi3] Comment empêcher le formatage dans un lien hypertexte
    Par GAEREL dans le forum Webi
    Réponses: 2
    Dernier message: 08/10/2010, 14h42
  2. Réponses: 7
    Dernier message: 25/07/2007, 13h14
  3. Comment appeler un fichier dans mon code
    Par olfasupcom dans le forum Langage
    Réponses: 5
    Dernier message: 30/05/2007, 12h16
  4. Comment visualiser le resultat de mon code
    Par Blaireau dans le forum Langage
    Réponses: 3
    Dernier message: 13/08/2006, 20h31
  5. Serveur/Client UDP: comment envoyer un fichier avec mon code
    Par danje dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 21/12/2005, 14h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo