Cómo crear una página de carrito de Odoo usando ReactJS

Cómo crear una página de carrito de Odoo usando ReactJS

Crear una página de carrito para una aplicación de comercio electrónico sin cabeza basada en Odoo usando ReactJS. A continuación se muestra una descripción general de alto nivel para desarrollar la página de su carrito y fragmentos de código de ejemplo para guiarlo a través del proceso. Primero, agregue el producto a su carrito desde la página del producto Odoo para una experiencia de compra perfecta. Introducción Odoo ofrece una variedad de puntos finales API que le permiten realizar diferentes acciones como «productos», «lista de categorías» y «carrito», pero trabajaremos con el punto final «carrito». Básicamente, la API de Odoo es normalmente la API Rest que proporciona servicios de comercio electrónico sin cabeza de Odoo y actúa como un puente entre su aplicación y la plataforma Odoo. Primeros pasos Lo guiaremos paso a paso a través de este blog sobre cómo crear una página de producto usando la API de Odoo. Configure el proyecto ReactJs Configure Tailwind CSS Configure el enrutador React Cree el carrito Monte la página del carrito Ejecute la aplicación React Paso 1. Configure su proyecto ReactJs Primero, necesita una base sólida para su aplicación React. Utilice la aplicación Create React para iniciar fácilmente su proyecto. Esta herramienta configura todo lo que necesita para comenzar a crear una aplicación React. Abra la terminal y escriba el siguiente comando. npx create-react-app odoo-cart-page Navegue hasta el directorio del proyecto. Una vez que se complete la configuración, navegue a la carpeta del proyecto: cd odoo-cart-page Paso 2: Configuración de Tailwind CSS Debe implementar Tailwind CSS para un diseño efectivo de la página del carrito y sus dependencias de desarrollo. Utilice el siguiente comando: npm install -D tailwindcss postcss autoprefixer Ejecute el siguiente comando para generar los archivos tailwind.config.js y postcss.config.js: npx tailwindcss init -p Configure Tailwind CSS Abra tailwind.config.js y actualice el contenido matriz para incluir rutas de archivos de plantilla. Esto permite a Tailwind eliminar estilos no utilizados en producción: /** @type {import(‘tailwindcss’).Config} */ module.exports = { content: [
«./src/**/*.{js,jsx,ts,tsx}», // Adjust if needed
]tema: { extender: {}, }, complemento: []} En el directorio src, abra el index. css y agregue las siguientes líneas para importar los estilos, componentes y utilidades base de tailwind: @tailwind base; @componentes de viento de cola; utilidad @tailwind; Una vez que haya configurado todo el proyecto, podrá ver la estructura de carpetas final. . ├── src/ │ ├── App.js │ ├── App.css │ ├── App.test.js | ├── index.js | – ── paquete -lock.json ├── paquete.json ├── tailwind.config.js └── README.md Paso 3: configurar React Router React Router se utiliza para definir múltiples rutas en la aplicación, por lo que necesita para instalar la biblioteca de enrutadores de reacción. Ejecute el siguiente comando en el directorio del proyecto. npm install reaccionar-router-dom Abra el archivo App.js y reemplace el código para importar BrowserRouter, Route y Routes para mostrar el componente del enrutador. importar «./App.css»; importar {BrowserRouter, Ruta, Rutas} desde «react-router-dom»; importar diseño desde «./pages/Layout»; función Aplicación() {retorno (<> }>

Representar la página de inicio

} /> ); } exportar aplicación predeterminada; Después de eso, puede crear el diseño para la página del carrito y otras páginas como Inicio y página del producto. Comenzaremos creando un archivo llamado Layout.js en la carpeta src/pages. importar {Salida, Enlace} desde «react-router-dom»; const Layout = () => { return ( <> {/* Puedes agregar un encabezado aquí */}

{/* Puedes agregar un pie de página aquí */} ); }; exportar diseño predeterminado; Paso 4: Crear el componente de la página del carrito Comenzaremos creando un archivo Cart .js en la carpeta src/pages. Este componente en React muestra los detalles del producto, incluida la imagen, la descripción, la cantidad y el precio total. Los usuarios pueden optar por realizar el pago o continuar comprando reaccionar»; importar {Enlace} desde «react -router-dom»; const Carrito = () => { const [cart, setCart] = usarEstado(); const imparApi=»«; const autenticar=»«; const carritoId = ««; const postData = () => { fetch(`${odooAPI}`, { método: «GET», encabezados: { «Content-Type»: «application/json; charset=utf-8», Autenticación: autenticar , cartid: cartId, }, }).then((respuesta) => { if (!response.ok) { arroja un nuevo error («La respuesta de la red no fue correcta»); } devuelve respuesta.json(); } ).then( (datos) => { console.log(«Datos de respuesta:», datos); setCart(datos((error) => { console.error(«Error de respuesta:», error); } ) ; } ; useEffect(() => { postData(); }, []); const cartData = carrito?.customerCart?.items; precios constantes = carrito?.carritocliente?.precios; const stepperCls = «flex w-full items-center text-teal-600 after:inline-block after:h-0.5 after:w-full after:border after:border-b after:border-gray-200 after:content-[»]»; const stepCls = «flexionar h-5 w-5 contracción-0 elementos-centro justificar-centro borde redondeado borde-2 completo-borde sólido-gris-200»; return (

  1. < /span>

{Array.isArray(cartData) && cartData.length > 0 && cartData.map((valor, índice) => (

))}

Producto Cantidad

Precio
  Garantía

{valor.nombre.producto}

{valor.producto.short_description}

{valor?.cantidad}
${valor?.producto? . precios?.precio?.valor.toFixed(2)}

pedido total

< div className="mb-2 flex aware-between"> Total parcial: ${precios?.subtotal_exclude_tax?.value.toFixed(2)}

{ Array .isArray(precios?.impuestos_aplicados) && precios?.impuestos_aplicados.longitud > 0 && precios?.impuestos_aplicados.map((precio, índice) => (

Impuestos: ${precio?.valor.toFixed(2)}

))}

Total: ${precios?.grand_total?.value.toFixed(2)}

< /div >

); }; exportar carrito predeterminado; Paso 5: armar la página del carrito. Abra el archivo App.js y mencione el componente en las rutas de navegación y visualización de la página del carrito. importar «./App.css»; importar {BrowserRouter, Ruta, Rutas} desde «react-router-dom»; importar diseño desde «./pages/Layout»; importar el carrito desde «./pages/Shop/Cart»; función Aplicación() {retorno (<> }>

Representar la página de inicio

} />} /> ); } Paso 6: Ejecute la aplicación React. Ejecute el siguiente comando para ver la página del carrito en la terminal, luego verifique la aplicación React en su navegador. npm run start Nota: – Vaya a la página del carrito en http://localhost:3000/shop/cart Conclusión ¡Felicitaciones! Ha aprendido con éxito cómo crear una página de carrito de odoo en React JS. Comience su desarrollo sin cabeza con Webkul. Gracias por leer este blog. Espero que te haya ayudado a comprender mejor cómo crear una página de carrito de odoo en React Js. ¡¡Feliz codificación!! Insignia de Abhishek Kumar 2 Abhishek Kumar, ingeniero de software de Magento, se destaca en el desarrollo de temas sin cabeza y aplicaciones móviles. Experto en tecnología en Magento JavaScript y MySQL, crea experiencias atractivas. Las habilidades de Abhishek garantizan una presencia Magento única y sin cabeza.

About Francisco

Check Also

Correcciones adicionales en el panel: instantánea del navegador Vivaldi 3491.4

Correcciones adicionales en el panel: instantánea del navegador Vivaldi 3491.4

En la instantánea de hoy hay mejoras adicionales en el experimento del panel de la …

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *