使用yargsnpm软件包,如果找不到命令,如何给出错误?

问题描述

我有2条命令的问题?

yargs
.command('test-all','',handler)
.command('test-file',handler)
.argv

用户输入:

node myapp.js other-command

但是yargs不会抛出错误。我该怎么办?

解决方法

您可以使用private final Route guitarRoutes = path(segment("api").slash("guitar"),() -> get(() -> { CompletionStage<List<Guitar>> listOfGuitarsFuture = ask(guitarDb,new FindAllGuitars(),Duration.ofSeconds(2)).thenApply(o -> (List<Guitar>) o); return completeOKWithFuture(listOfGuitarsFuture,Jackson.marshaller()); })); 进行此操作:

private static final Function<HttpRequest,CompletionStage<HttpResponse>> requestHandler = new Function<>()
    {


        @Override
        public CompletionStage<HttpResponse> apply(HttpRequest request) throws Exception
        {
            Uri uri = request.getUri();
            if (request.method() == HttpMethods.GET)
            {
                if (uri.path()
                        .equals("/api/guitar"))
                {
                    CompletionStage<List<Guitar>> listOfGuitarsFuture =
                            ask(guitarDb,Duration.ofSeconds(2)).thenApply(o -> (List<Guitar>) o);
                    return listOfGuitarsFuture .thenApply(guitars -> ???);

                }
            }
            return null;
        }
    };