Quiero hacer una interpolación de texto en HTML y JS como suelo hacer en angular, sé que no funciona si lo hago exactamente de la misma manera:
var myPhrase = 'This is my phrase>!'; <body> <p> {{myPhrase}} </p> </body>myTag.innerHTML = 'something here' Entonces mi pregunta es: si es posible, ¿cómo puedo hacerlo?Desafortunadamente, no creo que puedas hacer esto en Vanilla JS. Quizás podrías hacer algo como esto:
let greeting = 'Hello World!'; let message = 'How is the weather today?'; let str2 = `<h1>${greeting}</h1> <p>${message}</p>`; console.log(str2); Pero esto no tiene la misma facilidad de uso. Probablemente tendrá que usar myTag.innerHTML = 'something here' como dijo.
Se puede hacer, pero es engorroso y no bonito. Simplemente incrusta etiquetas de secuencias de script en el html y document.write la salida según sea necesario.
Este es uno de los pocos ejemplos en los que document.write se puede usar sucesivamente a medida que ocurre cada uso mientras se interpreta la página.
<body> <p> <script>document.write("hello")</script> world, <script>let phrase="how are you today?"; document.write(phrase);</script></p> </body>en el contexto de completar los datos almacenados, cada variable se puede definir en un script anterior (por lo que estará disponible para las futuras etiquetas de inserción). Así:
<script> let myName = "David"; let myAge = "99"; let myBirthday = "tomorrow"; </script> <h2>Hello, my name is <script>document.write(myName);</script></h2> <p>It's my birthday <script>document.write(myBirthday);</script></p> <p><script>document.write(`I will be ${myAge} years old`);</script></p>