Рубрики
Без рубрики

Meses Sin Intereses EN PRIPE PYTHON Y React Parte 2

En El Post Pasado Iniciamos Creando Nuestra Estructura de Archivos Y Directions Para Nuestro Формула … Теги с Python, реагировать, колбу, полосу.

Python-Slipe (4 части серии)

EN EL POST PASAA INICIMOS Creando Nuestra Estructura de Archivos Y Directios Para Nuestro Formulio de Pago Con Slipe Usando React Y Flask.

Ya Con ToDo Eso Listo PodeMos IICARIAR CREAR LOS Components de React Que Necesitaremos Para Procesar Los Pagos.

ESTO Es Muy Simple Lo único Que Debemos Hacer ES:

NPM Установка –Save @ Slipe/React-Slipe-JS @ Slipe/Slipe-JS

Y Listo, Ya Se Actualizo Nuestro Package.json y se instalo la libríaa.

Bootstrap ES Framework de frontend con el propósito de estilizar Nuestras Aplicaciones o Sitios Web.

Существуют Манас Манерас де Агрегарло ООН ПРОЕЕКТО РПА РЕАГА La Más Simple Y La Que Vamos A itilizar Es Agregando El CDN A el Index de Nuestra Alplación.

Перо нет ловкий агрегар al index.js si no que dentro de la carpeta publics encontraremos en archivo de nombre index.html y en en este dónde agregaremos el cdn de (bootstrap) [ https://getbootstrap.com/docs/4.5/getting-started/introduction/ Несомненно

AL Igual Que Custquier Archivo CSS ESTE VA DENTRO DE ООН Тег <Ссылка> y Doctro. дель de la pagina quedando algo como esto.

CUANDO Crowsos unuevo ProyeCto de React Usango Create-raction-app Este Nos Da Una Estructura de Archivos, Para Este Caso Vamos Модифицированный ООН Poco Esta Estructura.

  • ИК ЛА CARPETA SRC
  • Dejar únicamente el archivo index.js

Cuando Eliminemos Estos Archivos Y TrateMos de Iniciar El ProyeCto Con NPM начать Seguramente Tendremos Varios Производители y Estos Serán Buasados POR LAS Importaciones de Archivos Que Ya No Существует POR Lo Que Vamos Модифицированный ESE Archivo Index.js de la Siguiente Manera.

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App'

ReactDOM.render(, document.getElementById('root'));

AHORA AUN Tendyremos ООН ОШИБКА DE IMPORTACIONON POR QUE PARA ESTE PUNTO AúN NO SIVELEDE EL Componente Приложение пункт lo que vamos avel al al mismo nivel que index.js.

PARA TODA ESTA SERIE DE DEUTORIALES VAMOS A UTILIZAR Функциональные компоненты Que es la forma en la la que react nos dice que deberíamos trabajar, si alguno de ustedes asta acostumbrado atilizar Класскомпоненты Es Muy Fácil Migrar de Uno Otro.

Ahora Si EL Componente Приложение

// App.js

import React from 'react'
import { Elements } from '@stripe/react-stripe-js'
import { loadStripe } from '@stripe/stripe-js'

const App = () => {
    const stripePromice = loadStripe('stripe_public_key')

    return (
        
) } export default App

Хорошо .. ToDo Se ve Muy Cool Pero que estamos Haciendo, Bueno Partiendo de la Estructura Fuente de un Функциональный компонент lo que estamos haciendo es inmorthar Элементы de la librisería de slipe la cual nos va permitir utilizar los objetos Элемент de slipe en custerquier Componente Heredado.

Y la otra cosa que estamos haciendo es autenticantonos con nuestra clave publeta de slipe esto con la función LoadStripe la cual cargara de forma asíncrona al script de Slipe.js Отказ

ESA autenticación se la pasamos como rop el componente Элемент Y Listo. Ya Podemos Утилизарская полоса.

Doctro de la Carpea Src Vamos a Crage Una Nueva Carpeta LomaDa Компоненты y Doctro de Esta CrareMos unchivo llamado Checkoutform.js y escribiremos lo siguiente:

// CheckoutForm.js
import React from 'react'
import CardSection from './CardSection'

const CheckoutForm = () => {
    return (
        

Formulario de Pago

) } export default CheckoutForm

Este Componente NOS VA Сервут Para Agregar ToDos Los DESOS DEL Formulio de Pago Que Vallamos Necesitar, ES DECIR NOMBRE DEL CLINGYE, EMOT и т. Д. Todo Lo Que Queremos Saber del Client y por sudo los datos de su tarjeta para elizar el cobro.

EN ESTE CASO únicamente Estaré Pidiendo Los Datos de la Tarjeta, Pero Desde Este Componente ES Donde Se Pedirá Toda La Información del Clients.

Ahora en este punto no tenemos creado aun el componente Кардио пункт lo que vamos hacerlo.

Centro de la Carpeta Компоненты Vamos a Crage en archivo llamado Открытки. Джей , Doctro de Este Archivo Escribimos Lo Sigueinte.

import React, { useState } from 'react'
import { CardElement } from '@stripe/react-stripe-js'
import '../css/stripe_form.css'

const  CardSection = () => {

    const [state, setState] = useState({
        'errorMessage': ''
    })

    const card_element_options = {
        style: {
            base: {
                color: "#32325d",
                fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
                fontSmoothing: "antialiased",
                fontSize: "16px",
                "::placeholder": {
                    color: "#aab7c4",
                },
            },
            invalid: {
                color: "#fa755a",
                iconColor: "#fa755a",
            },
        }
    }

    const handleOnChanage = (event) => {
        setState({errorMessage: ''})
        if (event.error) {
            setState({error: true, errorMessage:event.error.message})
        }
    }

    return (
        <>
            
            

{state.errorMessage}

) } export default CardSection

Muy Bien Vamos a a la explicación.

EN ESTE Componente Estamos Importanto de Slipe EL Componente CardElement Отказ

Полоса Nos Пропорция Мушос Элементы Para Crage Nuestro Formulio de Pago, Перо Эль CardElement es us uno de los mas usities desde mi punto de vista por que engloba todos los deas de la tarjeta que necesitamos en un un rarjeta que necesitamos en un un unio input El Resto de los Elemento que nos прориемую полосу. https://stripe.com/docs/stripe-js

Ahora Tambien Estamos Agregando Algunas Opciones de Estilos Por по умолчанию AL CardElement Отказ

También Estamos Validando Si Eshivee Algún ошибка EN LOS DESO DE LA TARJETA HACIENDO USO DEL SPOP Onchange del componente CardElement Para Esta Validación Hacemos Uso Del Hook de React Уместите De Tal Forma que cuando Hay en Ошибка El objeto Event Del Componente CardElement Actualizamos El государство y lo randerizamos en El Tag

Queí les dejo la documentación de slipe en donde podremos ver todas las реквизит que le podimos pasar a los elementos de slipe

https://stripe.com/docs/js/elements_object/create_element?type=card#elements_create-options

En Este Componente También Agregamos Algunos Estilos POR CSS, Mismos Que Les Dejare El Reppo del Praeecto Para Нет El Escribir Todo El Código Aquí.

Ya Con ToDos Los Compents Listos Solo Nos Queda Importar EL Componente Cardform Дендор де Приложение Отказ

        
{/* Load the checkout form */}

Y Listo Ya TeneMos Nuestro Formulio.

Aun No Actecta Pagos, Pero Esto Lo Iremos Haciendo En Los Siguientes Post.

Les dejo El Reppo del ProyeCto de React EN DONDE PODRARLO VER TODO EL CODIGO O CLONARLO PARA VERLO EN USO EN COMPTYADORAS.

https://github.com/leonardoAlonso/StripeForm

Python-Slipe (4 части серии)

Оригинал: “https://dev.to/leonardoalonso/meses-sin-intereses-en-stripe-con-python-parte-2-48j0”