Quiero crear algunos html a través de JS, por lo tanto, necesito escribir el html dentro del archivo JS como:
function createHtmlSection() {
return "<li class=\"chapter up-wrapper-btn\">" +
"<div>" +
"<button><i class=\"fa fa-plus\" onclick=\"addSection('up',this)\"></i></button>" +
"<label contenteditable=\"true\">section 1</label>" +
"</div>" +
"</li>";
}
¿hay alguna herramienta o algún atajo para crear este tipo de cadena html?
Quiero decir, en este caso, tenía que escribir todo este html a mano. con +
y necesario agregar "
signo.
Algo que puede convertir esto:
<li class="chapter up-wrapper-btn">
<div>
<button><i class="fa fa-plus" onclick="addSection('up',this)"></i></button>
<label contenteditable="true">section 1</label>
</div>
</li>
a la primera cadena que necesitaba escribir a mano
javascript
html
Devy
fuente
fuente
Respuestas:
Puede usar un literal de plantilla (tenga en cuenta los ticks posteriores). El literal admite multilínea, y no necesitará escapar de las comillas (necesitará escapar de los ticks de retroceso).
Ejemplo:
También puede pasar parámetros a la función e insertarlos en la cadena utilizando la interpolación de expresión :
Mostrar fragmento de código
fuente
actualice su archivo JS a:
Lea este enlace para obtener más información: literales de plantilla
fuente
También puede usar '(una cita) para no tener que poner / poner delante cada "
fuente
Solo use literales de plantilla (no una comilla simple "'" sino la marca de retroceso "` ") como esta:
fuente
Un método alternativo es usar comillas simples y escapar del carácter de nueva línea.
Algo como esto:
Cambiar a comillas simples le evita escapar de las comillas dobles en el HTML, pero aún necesita citar las comillas simples.
Otra alternativa es usar una matriz y
.join('')
esto:Esto le permite agregar / editar / eliminar fácilmente partes del código más adelante.
Ambas opciones son para ES5 o anterior.
Para los navegadores modernos, por favor utilice la versión ES6 proporcionada por Ori Drori .
fuente