Как я могу перевести следующий код в 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
});
}
}