Commandos Gids

Welkom bij de Finch Commandos Gids! Deze gids laat zien hoe je commandos (commands) toevoegt en gebruikt in je Finch-applicatie. Met commandos kun je taken uitvoeren zoals database-migraties, taalbeheer en meer.

Custom commands toevoegen

Je kunt custom commands toevoegen met addCommand. Voorbeeld:

app.commands.add(
  CappController('example', options: [
    CappOption(
      name: 'test',
      shortName: 't',
      description: 'Een voorbeeldoptie',
    ),
  ], run: (c) async {
    if (c.existsOption('test')) {
      CappConsole.writeTable(
        [
          ['Kolom 1', 'Kolom 2', 'Kolom 3'],
          ...List.filled(5, ['Data 1', 'Data 2', 'Data 3'])
        ],
        dubleBorder: true,
        color: CappColors.warning,
      );
    }

    return CappConsole(
      'Dit is een voorbeeldcommando van Finch App! Tijd: ${DateTime.now()}',
      CappColors.success,
    );
  }),
);

Opmerking:

Capp is een package dat helpt bij het maken van interactieve consoleapplicaties. Voor meer informatie, zie Capp.

Een commando uitvoeren na het starten van de server

Je kunt een commando laten draaien nadat de server is gestart. Bijvoorbeeld: een database-migratie na het starten van de server uitvoeren met runCommand.

dart run example/lib/app.dart example --test

In dit voorbeeld is example de naam van het commando en --test is de optie die we doorgeven.

Opmerking: je moet de argumenten van main doorgeven aan runCommand. Als je --port als argument gebruikt, moet je deze ook doorgeven aan runCommand.

/// app.dart

final app = FinchApp(configs: configs);

void main([List<String>? args]) async {
   ...
   app.start(args);
}