Интегрировать PayPal Express Checkout в мой угловой проект - PullRequest
0 голосов
/ 12 июня 2019

Я пытаюсь интегрировать экспресс-оплату PayPal в свой угловой проект, но сталкиваюсь с очень странной ошибкой. Вот мой код для интеграции с PayPal. Проблема заключается в том, что кнопка Paypal не отображается, а отображается на вкладке элемента Chrome. И в журнале консоли ngAfterViewChecked я всегда получаю false.

this.paypalConfig = {
      env: 'sandbox',
      client: {
        sandbox: 'key here',
        // production: '<your-production-key here>'
      },
      commit: true
   }

private loadExternalScript(scriptUrl: string) {
    this.addScript = true;
    return new Promise((resolve, reject) => {
      const scriptElement = document.createElement('script')
      scriptElement.src = scriptUrl
      scriptElement.onload = resolve
      document.body.appendChild(scriptElement)
    })
  }
  ngAfterViewChecked(){
    const elementExists = !!document.getElementById('paypal-checkout-btn');
    console.log(elementExists);
    if (elementExists && !this.addScript) {
      this.loadExternalScript("https://www.paypalobjects.com/api/checkout.js").then(() => {
        paypal.Button.render(this.paypalConfig, '#paypal-checkout-btn');
        this.paypalLoad = false;
      });
    }
  }

Вот скриншот: - enter image description here

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