javascript - 无法在数据表中显示图像 (Javascript)
问题描述
我已经搜索了整个互联网。一切进展顺利,我正在使用以下模式将带有 NodeJs 的图像上传和检索到 MongoDB:
image: {
data: fs.readFileSync(path.join(__dirname, '/public/uploads/', req.file.filename)),
contentType: req.file.mimetype
},
使用 pug 显示图像非常简单:
img(src='data:'+data.image.contentType+';base64,'+data.image.data.toString('base64') rel='nofollow' alt='...')
当我尝试像这样在 dataTables 中显示图像时出现问题:
$(nTd).html("<img src='data:image/"+oData.image.contentType+";base64,"+oData.image.data.toString('base64')+"' class='rounded-circle' height='53'>");
它不起作用,无论我尝试什么,结果都是:
<img src="data:image/image/jpeg;base64,[object Object]" class="rounded-circle" height="53">`
请帮忙。
我的服务器端脚本的一部分
Candidato.find(searchStr, 'image nome status createdAt vaga',{ sort: {[sortColumn]: sortOrder}, 'skip': Number( req.body.start), 'limit': Number(req.body.length) }, function (err, results) {
if (err) {
console.log(chalk.red('erro ao obter resultados'+err));
return;
}
var data = JSON.stringify({
"draw": req.body.draw,
"recordsFiltered": recordsFiltered,
"recordsTotal": recordsTotal,
"data": results
});
res.send(data);
});
解决方案
解决了!我使用 Mongoose lean() 方法以纯 JavaScript 格式返回文档!——</p>
Usuario.find(searchStr, 'image.thumbnail nome tipo status createdAt',{ sort: {[sortColumn]: sortOrder}, 'skip': Number( req.body.start), 'limit': Number(req.body.length) }, function (err, results) {
if (err) {
console.log(chalk.red('erro ao obter resultados'+err));
return;
}
var data = JSON.stringify({
"draw": req.body.draw,
"recordsFiltered": recordsFiltered,
"recordsTotal": recordsTotal,
"data": results
});
res.send(data);
}).lean();;
推荐阅读
- c# - 将数据保存到相同模型和 Foreach 方法的列表中
- botframework - 验证失败时如何停止formflow对话框重新提示用户?
- c++ - AMQP-CPP RabbitMQ 接收到额外的符号,message.body() 比 message.size() 大一
- git - Git推送失败:无法取消链接
- javascript - 如何使用 Facebook Graph API 访问“朋友节点”?
- javascript - 如果所有项目都加载到其中,flexdatalist 中是否有任何事件可以得到通知
- reactjs - 反应路由器找不到变量:历史
- php - php 和 Mysql 不向服务器发送查询
- angular - 如何实现基于用户权限数组的动态菜单项列表?
- android - 在列表视图中关注订单编辑文本