Ho alcuni modelli per il mio codice frontend, come:come utilizzare un minifier HTML con i modelli di sottolineatura
<div class="row">
<div class="my-header col-md-1">
<!-- comments -->
{{ title }}
</div>
<div class="my-container col-md-11">
{% if (content) { %}
{{ content }}
{% } else { %}
<p>Empty</p>
{% } %}
</div>
</div>
e sto usando grunt-contrib-jst per memorizzare tutti in un unico file e poi su un altro passaggio di generazione sarà incluso in un singolo file JS e tale file verrà trasferito al CDN. Questa parte funziona perfettamente, ma desidero utilizzare l'opzione processContent
per minimizzare il codice del modello HTML, che contiene i delimitatori del modello Undercore (<%...%>
sostituito con {% ... %}
, <%= ... %>
sostituito con {{ ... }}
).
Volevo utilizzare html-minifier ma in realtà non riduce a icona nulla, apparentemente perché tenta di analizzare il modello come solo HTML (e non riesce a causa dei tag di modello).
Esiste un pacchetto/funzione Node che mi permetta di minimizzare questo tipo di modelli? Vorrei utilizzare commenti e spazi bianchi nei modelli di origine, ma rimuovere tutto il necessario sul file di build risultante.
In questo momento ho questo sul mio impostazioni JST:
processContent: function (content) {
return content
.replace(/^[\x20\t]+/mg, '')
.replace(/[\x20\t]+$/mg, '')
.replace(/^[\r\n]+/, '')
.replace(/[\r\n]*$/, '\n');
},
...
ma voglio minimizzare tutto il possibile, è per questo che ho provato con html-minifier.
Grazie!
hai mai trovato una risposta? Ho lo stesso problema in cui la mia dimensione JST potrebbe essere significativamente ridotta. –
@JoshWLewis scusate, non ancora fortuna :(Apparentemente questo tipo di minimizzatore deve essere a conoscenza dei tag Underscore e minimizzare tutto al di fuori di questi tag. –