Расстановка вопросов на языке Nativescript с помощью интерфейса - PullRequest
0 голосов
/ 26 июня 2019

Как я могу перевести следующий код в Javascript?

Полный код в https://www.mercadopago.com.mx/developers/en/guides/payments/mobile-checkout/receive-payments/

Сомнение в том, что для реализации этого класса необходим интерфейс, я уже реализовал его, но он все еще не работает.

Что происходит, так это то, что мне нужно реализовать методы finishCheckout и cancelCheckout с интерфейсом PXLifeCycleProtocol в

checkout.startWithNavigationControllerLifeCycleProtocol (
                app.ios.rootController,
                null // Here PXLifeCycleProtocol Interface
            );

В части null, и я не знаю, как реализовать эти методы

- (IBAction)startMercadoPagoCheckout:(id)sender {
  MercadoPagoCheckout *checkout = [[MercadoPagoCheckout alloc] initWithBuilder:[[MercadoPagoCheckoutBuilder alloc] initWithPublicKey:@"ENV_PUBLIC_KEY" preferenceId:@"PREFERENCE_ID"]];
  [checkout startWithNavigationController:self.navigationController lifeCycleProtocol:self];
}

-(void (^ _Nullable)(void))cancelCheckout {
    return ^ {
        [self.navigationController popToRootViewControllerAnimated:YES];
    };
}

- (void (^)(id<PXResult> _Nullable))finishCheckout {
    return nil;
}

Мой код:

import { Common } from "./mercadopago-px.common";
import * as app from "tns-core-modules/application";

export class MercadopagoPx extends Common {
    public start(publicKey: string, preferenceId: string): Promise<any> {
        return new Promise((resolve, reject) => {
            let checkout = MercadoPagoCheckout.alloc().initWithBuilder(
                MercadoPagoCheckoutBuilder.alloc()
                    .initWithPublicKeyPreferenceId(publicKey, preferenceId)
                    .setLanguage("es")
            );

            checkout.startWithNavigationControllerLifeCycleProtocol(
                app.ios.rootController,
                null // Here PXLifeCycleProtocol Interface
            );

            // but I do not know how to implement it with the self
        });
    }
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...