簡體   English   中英

express.js 應用程序的 EJS 模板:將數據傳輸到變量中

[英]EJS template for express.js app: transferring data into variable

我想將數據從我的 node.js(快速)應用程序傳輸到頁面上<script>中的變量。

在服務器端我有

let tmp = JSON.stringify(await f(i));
console.log(tmp); //correct data [{"id":"729199920929701988","a ...}]
res.render('r.ejs', {"guilds": tmp});

然后在r.ejs我有

<input type='hidden' id='getter' value="<%= guilds %>">
<script>
    console.log(document.getElementById("getter").value); //correct value: [{"id":"729199920929701988","...}]
    let v = "<%= guilds %>";
    console.log(v);
    console.log("<%= guilds %>"); //dumb value with " changed to special symbols: [{&#34;id&#34;:&#34;729199920929701988&#34;,&#34...}]
</script>

就性能而言,制作額外標簽的方法看起來並不是一個好方法。 至少它使瀏覽器創建一個需要時間的元素,特別是如果需要多個這樣的元素。

我想直接在<script>標簽中獲取數據。 當直接在<script>標簽中獲取值時,應該有一種方法可以避免將"更改為&#34 (事實上,我不明白為什么會發生這種情況)。有人可以幫忙嗎?

只需使用let v = <%- guilds %>; 而不是let v ="<%= guilds %>"; 告訴 ejs 你需要未轉義的數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM