javascript - Node.js mysql循环仅显示最后一个条目

标签 javascript mysql node.js for-loop electron

我在这里看到了这个问题的提出和回答,但我似乎无法让它为自己工作:我的 javascript mysql 循环仅显示数据库中的最后一个条目。我正在 Electron 中构建一个简单的内部 wiki,并尝试列出存储在 mysql 数据库中的一些类别。

<script>
const mysql = require('mysql');
const marked = require('marked');
var db = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: '',
  database: 'database'
});
db.connect();

$sqlnav = 'SELECT * FROM categories;'
db.query($sqlnav, function(error, rows, fields){
  if (error) throw error;
  for (var i = 0; i < rows.length; i++) {
    console.log(rows[i]);
    $('nav > ul').html('<li>' + rows[i].category + '</li>');
  }
});
</script>
<nav>
  <ul>
  </ul>
</nav>
console.log 正确显示每一行,但 html 中仅显示一个列表项。

其他一些答案表明我只是在循环的每次迭代中覆盖同一个实例,我只是无法理解如何摆脱它。我感谢任何帮助。

最佳答案

在 for 循环中构建并附加一个 html 字符串,然后在循环外部调用 $().html。

关于javascript - Node.js mysql循环仅显示最后一个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48026819/

相关文章:

PHP/HTML - 没有登录但来自导航链接的个人资料页面

php - 在数据库中保存一个列表,然后显示列表。拉维

MySQL 查询 : Customer Order Value and Order Count for Multiple Date Ranges

node.js - 无法在 Mac 上的 Nave 虚拟环境中安装 gulp 和 Bower

node.js - RxJS 与 rx-node

javascript - Magento 时事通讯弹出窗口(模式窗口)在每个页面上弹出。它应该只在主页上弹出

javascript - 使用javascript更改另一个范围内的变量值

javascript - 使用 Regex 拆分主题标签和搜索项目

javascript - 图像属性格式不正确

javascript - 向客户端发送错误作为 HTTP 请求的回调