Как исправить «Объект (...) не является ошибкой функции» с помощью PayPal в Ionic 3 - PullRequest
0 голосов
/ 23 февраля 2019

Я работаю в своем Ionic App и использую PayPal в своем Ionic App.

Это мой checkout.ts :

import { PayPal, PayPalPayment, PayPalConfiguration } from '@ionic-native/paypal/ngx';

constructor(private PayPalMobile: PayPal) { }

makepaymentp()
  {
    //console.log("Payment");
    this.PayPalMobile.init({
      PayPalEnvironmentProduction: 'YOUR_PRODUCTION_CLIENT_ID',
      PayPalEnvironmentSandbox: 'asasasasasasasasasas',
    }).then(() => {
      // Environments: PayPalEnvironmentNoNetwork, PayPalEnvironmentSandbox, PayPalEnvironmentProduction
      this.PayPalMobile.prepareToRender('PayPalEnvironmentSandbox', new PayPalConfiguration({
        // Only needed if you get an "Internal Service Error" after PayPal login!
        //payPalShippingAddressOption: 2 // PayPalShippingAddressOptionPayPal
      })).then(() => {
        let payment = new PayPalPayment('3.33', 'INR', 'Description', 'sale');
        this.PayPalMobile.renderSinglePaymentUI(payment).then(() => {
          // Successfully paid

          // Example sandbox response
          //
          // {
          //   "client": {
          //     "environment": "sandbox",
          //     "product_name": "PayPal iOS SDK",
          //     "paypal_sdk_version": "2.16.0",
          //     "platform": "iOS"
          //   },
          //   "response_type": "payment",
          //   "response": {
          //     "id": "PAY-1AB23456CD789012EF34GHIJ",
          //     "state": "approved",
          //     "create_time": "2016-10-03T13:33:33Z",
          //     "intent": "sale"
          //   }
          // }
        }, () => {
          // Error or render dialog closed without being successful
        });
      }, () => {
        // Error in configuration
      });
    }, () => {
      // Error in initialization, maybe PayPal isn't supported or something else
    });

  }

Thisмой checkout.htm l:

<button class="myaddto22" [disabled]="!RadioValue" (click)="makepaymentp()" full ion-button round="true">
      Make Payment
</button>

Это мой app.module.ts :

import { PayPal } from '@ionic-native/paypal/ngx';

providers: [PayPal]

Я импортировал всеВещи, необходимые для запуска PayPal, но когда я запускаю код PayPal, он показывает ошибку.

Объект (...) не является функцией в PayPal.init (index.js: 28)

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 23 февраля 2019

Поскольку вы используете Ionic v3, вам следует import PayPal из '@ionic-native/paypal' не из '@ionic-native/paypal/ngx'.

Если вы устанавливаете PayPal с использованием npm install @ionic-native/paypal, удалитеиспользуйте npm uninstall @ionic-native/paypal и переустановите, используя npm install --save @ionic-native/paypal@4

...