/ / vložte značku skriptu s údajmi pomocou ejs (ejs-locals) na express.js - javascript, node.js, express, ejs

vložte značku skriptu s údajmi pomocou ejs (ejs-locals) na express.js - javascript, node.js, express, ejs

Používam ejs-locals pre express 3.x (https://github.com/RandomEtc/ejs-locals)

Ako vložím značku skriptu zo šablóny s dynamickými údajmi?

Vo svojom layout.ejs mám

<%- block.scripts %>

V mojej šablóne stránky login.ejs ju chcem nahradiť dynamickými údajmi:

<% block("scripts", "<script> var app = window.app || {}; app.err = <%- JSON.stringify(err) %>, app.q = <%- JSON.stringify(q) %>; </script>") -%>

Mám chybu:

500 SyntaxError: Unexpected token % - Predpokladám, pretože to nemôžem urobiť <%= JSON.stringigy(err) %> tu.

odpovede:

2 pre odpoveď č. 1

Problém som vyriešil presunutím vloženia skriptu do layout.ejs, pretože je to vždy to isté.

    <% include script %>
</body>

V opačnom prípade musíte reťazec ukončiť:

//this works but is rather cumbersome to do on every page template.
<% block("script", "<script>" +
"app.req.err = "+ JSON.stringify(err) +";n" +
"app.req.q = "+ JSON.stringify(q) +";n" +
"</script>") %>