无法调用未定义节点的方法'forEach'.js



我一直在做一个小网站来学习。 但我遇到了标题之类的错误。为了得到答案,我在互联网上搜索到处都是。我找不到答案。

我的系统是Ubuntu,node.js,express和mysql。

应用.js

var fs = require('fs');
var ejs = require('ejs');
var http = require('http');
var mysql = require('mysql');
var express = require('express');
var client = mysql.createConnection({
  user: 'root',
  password: 'password',
  database: 'Company'
});
var app = express();
http.createServer(app).listen(8080, function(){
  console.log('Server running at http://127.0.0.1:8080');
});
app.get('/', function(request, response) {
  fs.readFile('list.html', 'utf8', function(error, data) {
    client.query('SELECT * FROM prodects', function (error, results) {
       response.send(ejs.render(data, {
        data: results
      }));
    });
  });
});

列表.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>List Page</title>
</head>
<body>
  <h1>List Page</h1>
  <a href="/insert">INSERT DATA</a>
  <hr />
  <table width="100%" border="1">
    <tr>
      <th>DELETE</th>
      <th>EDIT</th>
      <th>ID</th>
      <th>NAME</th>
      <th>Model Number</th>
      <th>Series</th>
    </tr>
    <% data.forEach(function(item, index) { %>
    <tr>
      <td><a href="/delete/<%= item.id %>">Delete</a></td>
    </tr>
    <% }); %>
  </table>
</body>
</html>

20线处有一个EORROR;在我的屏幕上,它显示"无法调用未定义的方法'forEach'"。

我最好的猜测是你在对client.query的回调中得到一个错误,因此results为空。

也许错误是拼写错误的表名? 产品 -> 产品?

最新更新