javascript - 推入 foreach 不添加到数组
问题描述
我正在尝试运行 foreach 循环并向数组添加值,但它无法正常工作。第一个 foreach 中的值被正确添加,但没有添加第二个 foreach 循环中的值。
我的代码是:
categories.forEach(async function (cat) {
te.push({ params: { slug: [cat.cat_slug] } })
var articles = await db.query(escape`
SELECT *
FROM articles
WHERE category = ${cat.id}
`)
articles.forEach(function (art) {
te.push({ params: { slug: [cat.cat_slug, art.slug] } })
})
})
有任何想法吗?
解决方案
根据这个答案Using async/await with a forEach loop Async 不能在 foreach 循环中使用,我不得不改用 for 循环,它得到了修复。
推荐阅读
- javascript - 二进制搜索返回第一次出现的 n
- javascript - window.blur() 不起作用(请测试一下)
- python - OpenCV BGR 图像转 16 位灰度
- office-js - Blazor 作为 Office 加载项?
- reactjs - React Input type="number" 字段不会触发 onChange
- python - Python日志记录模块:当我运行脚本时,记录器越来越多地重复消息
- c# - FindElement 在 Appium 中找不到任何东西
- json - 如何定义自己的 JSON Schema 关键字和词汇?
- docker - 如何将机器中的文件夹挂载到另一台机器的 docker 容器中?
- keras - 在 AWS sagemaker 上以脚本模式训练自动编码器