Rumah  >  Soal Jawab  >  teks badan

Dalam Node.js, Inquirer keluar sebelum saya membuat pilihan

Saya cuba menulis aplikasi baris arahan yang menggunakan penyiasat untuk memaparkan dan akhirnya mengemas kini pangkalan data mysql. Apabila saya menggunakan shell mysql, fail pangkalan data saya nampaknya teratur, tetapi apabila saya cuba menyambung ke pangkalan data saya dan memanipulasinya melalui penanya, saya nampaknya menghadapi masalah.

Setakat ini ia akan log bahawa ia disambungkan ke pangkalan data yang betul, memaparkan pilihan menu, kemudian segera keluar tanpa membenarkan saya membuat pilihan.

Jika saya mengulas blok const connect, queyer tidak akan keluar dan membenarkan saya membuat pilihan, tetapi kemudian aplikasi akan pecah kerana pangkalan data tidak disambungkan.

Terima kasih terlebih dahulu untuk sebarang pandangan

Kod semasa saya:

require('console.table');
const inquirer = require ('inquirer');
const mysql = require ('mysql2');

const connect = mysql.createConnection(
    {
        host: 'localhost',
        user: 'root',
        password: '',
        database: 'employeeDB'
    },
    console.log('Connected to employeeDB')
);

function init(){
    menu();
};

async function menu(){
    await inquirer.prompt([
            {
                type: "list",
                name: "userChoice",
                message:"Menu:",
                choices: [
                    "View All Departments",
                    "View All Roles",
                    "View All Employees"
                ]
            },
        ])
        .then(({userChoice}) => {
            if (userChoice === "View All Departments"){
                viewDepartment()
            } else if (role === "View All Roles") {
                viewRole()
            } else {
                viewEmployee()
            }
        })
}

const viewDepartment = () => {
    connect.query(
        'SELECT * FROM department;',
        (err, results) => {
            console.table(results);
            menu();
        }
    )
};

const viewRole = () => {
    connect.query(
        'SELECT * FROM role;',
        (err, results) => {
            console.table(results);
            menu();
        }
    )
};

const viewEmployee = () => {
    connect.query(
        'SELECT * FROM employee;',
        (err, results) => {
            console.table(results);
            menu();
        }
    )
};

init();

P粉947296325P粉947296325259 hari yang lalu293

membalas semua(1)saya akan balas

  • P粉676588738

    P粉6765887382024-02-04 00:00:54

    Saya rasa sambungan msql anda menyebabkan masalah. Anda tidak memasukkan kata laluan, sehingga menyebabkan ranap sistem. Tetapi ia berlaku secara tidak segerak, jadi gesaan penyiasat akan muncul juga, tetapi apl anda akan ranap sebelum anda membuat pilihan anda

    balas
    0
  • Batalbalas