我有一个来自 js 文件的对象(数据)。
router.get('/participant-module',(req,res)=>{
let sql = dbModel.participant_per_module;
db.query(sql, (err, result)=>{
if(err) throw err;
res.render('dashboard', {title:'Get', data:result});
console.log(result);
});
});
data 包含两个数组;emp_id 和 module_id;
我想将此变量数据传递给 ejs 中的 Chart JS 数据。
let pchart = new Chart(myChart, {
type:'bar',
data:{
labels: '<%=data.emp_id%>',
datasets:[{
label:'p',
data:[123,234,533,232]
}]
}
})
但它返回null(即标签='')
我错过了什么吗?我尝试了不同的 ejs 标签,例如 <%- 但它返回相同。
亲切的问候,D
数据是一个对象数组。您可以使用反引号以下列方式访问 emp_id:
labels: `<%= data[0].emp_id %>`, `<%= data[1].emp_id %>`, ... , `<%= data[n].emp_id %>`
您还可以将 emp_ids 推送到另一个数组中,然后将该数组用作标签。
var Data = JSON.parse(`<%- JSON.stringify(data) %>`);
var labelsData = [];
for(var i = 0; i < Data.length; i++){
labelsData.push(Data[i].emp_id);
}
let pchart = new Chart(myChart, {
type:'bar',
data:{
labels: labelsData,
datasets:[{
label:'p',
data:[123,234,533,232]
}]
}
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句