Ничего не происходит при токенизации размещенных полей - PullRequest
0 голосов
/ 16 марта 2020

Так что в основном у меня такая же настройка, как в примере с документами Braintree, но я пишу в div вручную, потому что я использую angular материал для реальной формы.

Вот HTML code:

<form action="/" id="braintree-workaround-input" method="post">
    <label for="cc-input">Card Number</label>
    <div id="cc-input"></div>

    <label for="cvv-input">CVV</label>
    <div id="cvv-input"></div>

    <label for="exp-input">Expiration Date</label>
    <div id="exp-input"></div>

    <input type="submit" value="Pay" />
</form>

Вот код для записи данных в div:

document.getElementById('cc-input').innerText = this.ccInput;
document.getElementById('exp-input').innerText = this.expDateInput;
document.getElementById('cvv-input').innerText = this.cvvInput;

Вот код для настройки размещенных полей (который работает):

console.log('Token', token);

const client = await braintree.client.create({
    authorization: token
});

console.log('Client', client);

try {
    this.hostedFieldsInstance = await braintree.hostedFields.create({
        client,
        fields: {
            number: { selector: '#cc-input' },
            expirationDate: { selector: '#exp-input' },
            cvv: { selector: '#cvv-input' },
            /*postalCode: { selector: '#post-input' }*/
        }
    });
    console.log('SUCC')
} catch (e) {
    console.log('NO SUCC')
    console.error(e)
}

А вот код, который должен произойти при отправке данных:

console.log('RUNNING TOKENIZE')

try {
    const nonce = await this.hostedFieldsInstance.tokenize();
    console.log('NONCE', nonce);
    console.log('SUCC')
} catch (e) {
    console.log('NO SUCC')
    console.error(e)
}

Но когда я пытаюсь сделать это со следующими данными:

cc: "4111 1111 1111 1111"
exp: "05/21"
cvv: "123"

Ничего не получается поставить после "RUNNING TOKENIZE".

Пример данных находится внутри div, когда я использую dev-tools для проверки, так что это не проблема.

Кто-нибудь здесь имеет какое-либо представление, почему ? Был бы очень признателен.

...