open-pay / openpay-js

Openpay Javascript bindings
Apache License 2.0
24 stars 28 forks source link

TypeError: n[fieldName].push is not a function #8

Closed Menusito closed 8 years ago

Menusito commented 8 years ago

OpenPay.token.extractFormAndCreate( $('#processCard'), SuccessCallback, ErrorCallback);

TypeError: n[fieldName].push is not a function

m1slash commented 8 years ago

Hola, ¿puedes darme más detalle de como generaste ese error?, esto para poder reproducirlo, asumo que tienes un html con las librerias requeridas y con un formulario que llena data-openpay-card de manera correcta, te recomiendo darle un vistazo a éste proyecto https://github.com/open-pay/openpay-shopping-sample, es una sencilla implementación del uso de la librería.

Saludos y quedo en espera de tu respuesta.

Menusito commented 8 years ago

hoy monte un nuevo ejemplo en blanco y parece que ya no sucede el error. Me hizo dudar si fue una cuestión mía o si ya resolvieron el error. Como sea, parece que ya quedo resuelto.

m1slash commented 8 years ago

De acuerdo, saludos.

angelscabrerag commented 6 years ago

El Error:

TypeError: object[fieldName].push is not a function
openpay.v1.js:318:25
openpay.v1.js:332:33
openpay.v1.js:557:27

Solo aparece solo cuando utilizo los campos en el formulario:

data-openpay-card-address="line1"
data-openpay-card-address="line2"
data-openpay-card-address="line3"
data-openpay-card-address="city"
data-openpay-card-address="state"
data-openpay-card-address="country_code"
data-openpay-card-address="postal_code"

Al revisar las lineas de codigo indicadas en https://openpay.s3.amazonaws.com/openpay.v1.js o https://openpay.s3.amazonaws.com/openpay.v1.min.js son las siguientes:

318 object[fieldName].push(inputValue || ''); 332 objectAddress = createObject(addressFields, 'data-openpay-card-address'); 557 var _params = INSTANCE.extractFormInfo(_form);

El mismo error aparece al usar ambas versiones de la libreria (no min.js o min.js). Al retirar los campos data-openpay-card-address todo funciona correctamente.