json - programacion - ¿Pasar objetos al cliente en el nodo+express+jade?
pug tutorial español (1)
Tengo una consulta bastante pesada en el servidor que da como resultado una nueva página de renderizado, y me gustaría pasar algunos de los resultados de la consulta al cliente (como una matriz de objetos JavaScript). Esto es básicamente así que no tengo que hacer una consulta JSON por separado más tarde para obtener el mismo contenido (que es básicamente estático). Los datos serán útiles eventualmente, pero no inicialmente, así que no los puse directamente en el documento.
app.get(''/expensiveCall'', function(req, res) {
// do expensive call
var data = veryExpensiveFunction();
res.render(''expensiveCall.jade'', {
locals: {
data: data,
}
});
});
});
data es una matriz de objetos y solo algunos se usan inicialmente. Me gustaría pasar la totalidad de los datos o algunos subconjuntos (dependiendo de la situación). Mi jade parece jade normal, pero me gustaría incluir algo así como
<script type="text/javascript">
var data = #{data};
</script>
pero esto no funciona (es una matriz de objetos).
No puede alinear un objeto JS así, pero puede JSON.stringify
antes de:
<script type="text/javascript">
var data = !{JSON.stringify(data)};
</script>