En lugar de usar un montón de if s, ¿hay alguna manera de mostrar diferentes opciones para diferentes selecciones en lugar de tener que especificar directamente para cada una como lo estoy haciendo? Creo que existe la opción .when , pero no estoy muy seguro de cómo usarla en esta situación.
Estoy tratando de permitirles seleccionar la opción de billetera y luego permitirles ver la billetera que elijan. Además, parece que no puedo descifrar cómo enviar al usuario de regreso al comienzo del menú cuando seleccionan la tecla <<< para salir, por lo que cualquier entrada sobre cómo hacerlo sería buena.
inquirer .prompt([ { type:'list', message: "Select an option", name: 'walletOptions', choices: [ 'Wallet', 'Normal Transaction', 'Arbitrage' ]} ]) .then(({walletOptions}) => { if (walletOptions === 'Wallet') { //let them view and edit wallet inquirer .prompt([ { type:'list', message: "Select an account", name: 'accountOptions', choices: [ '1', '2', '3', '<<< Quit' ]} ]) .then(({accountOptions}) => { if (accountOptions === '1') { //display account info for one var walletOne = wallet[1] console.log(walletOne); } else if (accountOptions === '2') { //display account info for two var walletTwo = wallet[2] console.log(walletTwo); } else if (accountOptions === '3') { //display account info for three var walletThree = wallet[3] console.log(walletThree); } else { return ; } }) } else if (walletOptions === 'Normal Transaction') { //continue with mainswap.js var normalTx = require("./mainswap"); mainswap.deploy() } else { //continue with ... } });Use "rawlist" en lugar de "list" en el atributo de tipo como en el ejemplo oficial
También elimine el "}" no deseado después de la lista de opciones.