2016-05-19 14 views
44

Nei letterali del modello es6, come si può avvolgere un modello lungo letterale in multilinea senza creare una nuova riga nella stringa?Avvolge la linea letterale del modello lungo su multilinea senza creare una nuova riga nella stringa

Ad esempio, se si esegue questa operazione:

const text = `a very long string that just continues 
and continues and continues` 

allora sarà creare un nuovo simbolo linea alla stringa, come interpretarlo per avere una nuova linea. Come si può avvolgere il modello lungo letterale su più linee senza creare la nuova riga?

risposta

65

Se si introduce un line continuation (\) nel punto della nuova linea nel letterale, non creerà una nuova linea su uscita:

const text = `a very long string that just continues\ 
and continues and continues`; 
console.log(text); // a very long string that just continuesand continues and continues 
+0

non sembra funzionare se io uso le variabili =/ –

+1

Non sicuro di aver capito quello che vuoi dire. Potete fornire un [Esempio REPL] (https://babeljs.io/repl/)? – CodingIntrigue

+1

Non facilmente nel mio caso, dal momento che variabili diverse vengono prese dai file di configurazione del coffeescript ecc. Mm .. sembra che funzioni altrimenti ma per qualche motivo aggiunge spazio vuoto lì –

-2

La soluzione proposta da @CodingIntrigue non funziona per me sul nodo 7. Bene, funziona se non utilizzo una continuazione di linea sulla prima riga, altrimenti fallisce.

Questo non è probabilmente la soluzione migliore, ma funziona senza problemi:

(` 
    border:1px solid blue; 
    border-radius:10px; 
    padding: 14px 25px; 
    text-decoration:none; 
    display: inline-block; 
    text-align: center;`).replace(/\n/g,'').trim(); 
13

Si tratta di una vecchia. Ma è venuto fuori. Se lasci spazi nell'editor, li inserirà.

if 
    const text = `a very long string that just continues\ 
    and continues and continues`; 

solo fare il normale simbolo +

if 
    const text = `a very long string that just continues` + 
    `and continues and continues`; 
Problemi correlati