[英]How to pass JSON data from express to a javascript/jQuery script in pug?
I am trying to pass some JSON data from an express route to a .js file which is in a .pug template. 我试图将一些JSON数据从快速路由传递到.pug模板中的.js文件。 I can't figure out how to achieve this. 我不知道如何实现这一目标。 I am trying as follows: 我正在尝试如下:
The router: 路由器:
// Office Locations
router.get('/office_locations', (req, res, next) => {
var sql = 'SELECT * FROM office_locations ORDER BY oloffice';
var params = [];
pool.query(sql, params, (err, result) => {
if (err) {
console.log(err);
res.json(err);
} else {
res.render('office_locations', {title: title, tabledata: JSON.stringify(result.rows)});
}
});
});
The PUG file: PUG文件:
extends layout
block content
.container
include menu.pug
.workspace
.map-content
.map#map
include main-addons.pug
link(rel="stylesheet" href="https://unpkg.com/leaflet@1.4.0/dist/leaflet.css" integrity="sha512-puBpdR0798OZvTTbP4A8Ix/l+A4dHDD0DGqYW6RQ+9jxkRFclaxxQb/SJAWZfWAkuyeQUytO7+7N4QKrDh+drA==" crossorigin="")
script(src="https://unpkg.com/leaflet@1.4.0/dist/leaflet.js" integrity="sha512-QVftwZFqvtRNi0ZyCtsznlKSWOStnDORoefr1enyq5mVL4tmKB3S/EnC3rRJcxCPavG10IcrVGSmPh6Qw5lwrg==" crossorigin="")
script(src="/javascripts/office_locations.js")
script(src="/javascripts-dev/table.js")
The file where I require the tabledata information is table.js: 我需要tabledata信息的文件是table.js:
$(document).ready(function() {
// get the table data
var tabledata = !{tabledata};
console.log(tabledata);
});
But am getting always false when logging to console. 但是登录到控制台时总是变得假。
How can this be achieved? 如何做到这一点?
Add this code before the script(src="/javascripts-dev/table.js")
line: 在script(src="/javascripts-dev/table.js")
行之前添加以下代码:
script(type='text/javascript').
window.tabledata = "#{tabledata}";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.