Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to separate commands into files Vorpal.js

Tags:

vorpal.js

I have many commands and each of them is long. For example, I have:

  • create
  • read
  • update
  • delete

I want to put them in separate files:

  • ./commands/create.js
  • ./commands/read.js
  • ./commands/update.js
  • ./commands/delete.js

and I want to require them in app.js:

require('./commands/create.js');
// ...

so I can:

node app.js create HelloWorld

How can I achieve this?

like image 604
Minh Chu Avatar asked Nov 18 '25 07:11

Minh Chu


1 Answers

I would do something like this:

// create.js

function create(args, cb) {
  // ... your logic
}

module.exports = function (vorpal) {
  vorpal
    .command('create')
    .action(create);
}

Then in your main file, you can do:

// main.js

const vorpal = Vorpal();

vorpal
  .use(require('./create.js'))
  .use(require('./read.js'))
  .show();

More on this here.

like image 173
dthree Avatar answered Nov 21 '25 02:11

dthree