使用cli-npm显示表格时出错

时间:2019-04-05 19:43:03

标签: javascript mysql node.js

我想为要在终端中显示的CLI表创建一个单独的模块。

我最初将其放入main.js文件中。但是由于我将在多个文件中使用它,因此我希望它成为一个独立模块,用作依赖项。

但是,它又返回错误,或者是forEach问题,参数“ res”或toString()的属性未定义。

如果我在main.js文件中的console.log(res),它将返回mysql数据库上的信息。

tables.js

let Table = require("cli-table");

let tables = (res) => {
    let displayTable = new Table ({
        head: ["ID", "Product Name", "Category", "Price", "Stock"],
        colWidths: [5,46,15,9,9]
    });
    res.forEach(function(element) {
        displayTable.push([element.product_id, element.product_name, element.category,
        element.price, element.stock_quantity]);
    });
    console.log(displayTable.toString());
};

module.exports = { tables };

main.js

let connection = require ("./connection");
let displayTable = require("./tables");

connection.connect(err => {
    if (err) throw err;
    console.log(`Connected at port: ${connection.threadId}`);
});

let renderTable = () => {
    connection.query("SELECT * FROM products", (err, res) => {
        if (err) throw err;
        displayTable.tables(res);
    });
};

renderTable();

0 个答案:

没有答案