如何将一个 Node.js Express 变量传递到我的静态 JavaScript 文件?我正在尝试在客户端 js 中进行提取,但为此我需要从数据库中获取 2 个 ID。现在我通过使用 .ejs 文件发送 ID 来欺骗这种行为。这可行,但远远不正确。
<span id="user_1"><%= user.ID %></span>
<span id="user_2"><%= matchId %></span>
setInterval(function() {
let test123 = document.querySelector('.chat_history_section_inner').childElementCount;
let user_1 = document.querySelector('#user_1').innerHTML;
let user_2 = document.querySelector('#user_2').innerHTML;;
fetch('/api?s1=' + user_1 + '&r1=' + user_2 + '&s2=' + user_2 + '&r2=' + user_1, {
method: 'get'
}).then(function (response) {
return response.json()
}).then(function (res) {
if (res.length > test123) {
location.reload();
} else {
console.log('Your chat is up to date!')
}
});
}, 1000);
最佳答案
您是否尝试将其直接传递给变量?
let user_1 = "<%= user.ID %>";
如果你的js文件不是由EJS渲染的,你必须将它从ejs渲染的文件传递到你的函数,或者你将它作为自定义属性添加到你的html标签中并从id中读取属性 - 这类似于你的解决方案。
关于javascript - 将 Node.js Express 变量传递给我的静态 javascript 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43293199/