Quiero usar variable (o variables) en el archivo ejs en la etiqueta del script, también quiero pasar el archivo renderizado a una función para tomar capturas de pantalla del archivo ejs.
Pero ahora tengo 2 problemas:
1. No sé cómo pasar la variable en el archivo del servidor al archivo ejs y renderizar y usarlo sin app.get... (en express) porque es del lado del servidor y quiero usar el archivo html.
2. No sé cómo usar la variable en el archivo ejs en la etiqueta del script
estos son mis archivos:
index.ejs
<div id="tvchart"><% symbol %></div> <script> //some codes var symbolD =<%= symbol %>; fetch(`http://127.0.0.1:9665/fetchAPI?endpoint=https://api.binance.com/api/v3/klines?symbol=${symbolD}&interval=1m&limit=1000`) </script>servidor.js
// set the view engine to ejs app.set("view engine", "ejs"); const symbol = "EGLDUSDT" const file = ejs.render("./index.ejs" , symbol); console.log(file)Entonces, ¿por qué mi ejs y el archivo del servidor no funcionan?
El segundo argumento para render debe ser un objeto donde los nombres de las propiedades sean las variables pasadas al archivo EJS.
ejs.render("./index.ejs" , {symbol}); Una vez que arregle ese var symbolD =<%= symbol %>; te da var symbolD =EGLDUSDT; que arroja un error porque no tiene una variable llamada EGLDUSDT .
Use JSON.stringify para generar algo compatible con la sintaxis literal de JavaScript (es decir, con comillas alrededor de las cadenas y escape adecuado para los caracteres especiales).
var symbolD = <%= JSON.stringify(symbol) %>;