node.js - TypeError:result.slice 不是函数
问题描述
我正在尝试使用 node/mongoose 运行多个 mongodb 查询。我有非常相似的代码在同一个文件中工作,但不是同一条路线。不同之处在于查询(相同的格式只是不同的搜索参数)和res.render
行。
我做了大约一个小时的谷歌搜索和搜索堆栈溢出,到目前为止没有发现任何帮助。
错误信息
TypeError: result.slice is not a function
at results.map.result (/home/ubuntu/workspace/sailhr/server/routes/hr.js:73:58)
at Array.map (native)
at Promise.all.then.results (/home/ubuntu/workspace/sailhr/server/routes/hr.js:73:36)
at process._tickDomainCallback (internal/process/next_tick.js:135:7)
代码
let queries = [
User.findById(req.params.id, function(err, foundUser){
if(err){
req.flash('error', 'Could not find the user requested.');
}
}),
User.find({companyID: req.user.companyID, role: "manager" }, function(err, allManagers){
if(err){
req.flash('error', 'Could not find all company managers.');
}
})
];
Promise.all(queries)
.then(results => (results.map(result => (result.slice(1)))))
.then(adaptedResults => res.render('user/profileEdit', {header: 'EDIT USER PROFILE', Employee: adaptedResults[0], managers: adaptedResults[1]}))
.catch(err => {
console.log(err)
req.flash('error', err[0]);
res.redirect('/users');
});
解决方案
推荐阅读
- java - 在命令提示符上运行 jps
- python-3.x - 如何填充 numpy.array 以便它可以是 np.vsplit()?
- c - 如何从 C 中的成员访问包含结构?
- reactjs - 创建具有唯一 url 的反应页面
- c# - 正确保存“ç”字符
- python - 创建卷 Openstack Python SDK 时出错
- javascript - 使用 jQuery 通过 data-src 从文本文件中获取数据
- javascript - 无法读取未定义的属性“类型”(操作)
- javascript - 视频上传和流式传输(使用 Laravel VueJs 上传和显示所有类型的文件视频、图像、文档等)
- python - 如何更改 dash_table.DataTable 单元格并更新其他回调