Coder Social home page Coder Social logo

bsale2022-front's Introduction

Bsale2022-Aplicación

Frontend Bsale 2022 Bienvenido a la documentación de la aplicación de tienda virtual, la cual permite presentar los productos y categorías extraído de los endpoints del API Rest BSALE 2022

Contenidos

Introduccion

  • La aplicación esta desarrollada en JavaScript Vanilla.
  • Se empleó métodos estaticos.
  • camelCase en los nombres de variables.
  • Explicación detallada se encuentra en los comentarión de código fuente

Seguridad

No requiere de token de acceso para realizar las consultas. Dado que la API es desarrollado como parte de una prueba técnica

Explicación del Ejercicio

1. Creación de la estructura inicial

-js
    - Product.js
    - Category.js
- css
    - main.css
- index.html
- app.js 

2. Maquetación y estilos

  • Para el desarrollo de la tienda virtual se utilizó boostrap para el diseño.
  • Se creo tres estructuras en el body de HTML: header, main y footer
  • Se asignaron id con el objetivo de manejarlo mediante javascript.

3. Creación de las clases

  • En primer lugar, se creo la clase Product que contiene los siguientes métodos, la explicación de los argumentos de cada método se encuentra detallado en los comentarios del código fuente:
    1. #showDOM - Método estático privado con el objetivo de renderizar los productos.
    2. #clearDOM - Método estático privado con el objetivo de limpiar el contenedor de productos.
    3. #showError - Método stático privado para mostrar errores que se presenten.
    4. #loading - Método stático privado para mostrar el efecto de carga al momento de realizar una petición.
    5. getAllProducts - Método stático que realiza la petición de todos los productos.
    6. getProductByName - Método stático que realiza la petición de todos los productos filtrado por nombre.
    7. getProductByCategory -Método stático que realiza la petición de todos los productos filtrado por categoría.
    8. #pagination - Método stático privado para gestionar la paginación de las distintas consultas.
  • En segundo lugar, se creo la clase Category que contiene los siguientes métodos, a explicación de los argumentos de cada método se encuentra detallado en los comentarios del código fuente:
    1. getAllCategories - Método statico para obtener todas las categorías
    2. #showDropdown -Método stático privado para renderizar en el DOM las categorías.

4. Empleo de las clases en App.js

  • Mediante los id asignados en el código HTML se obtuvo los elementos que ejecutaran los eventos, desde el evento de carga, donde se ejecuta las peticiones de productos y categorías, hasta el evento click o enter cuando se busca un determinado producto mediante nombre, categoría o página.
  • Finalmente se empleo un timer que reinicia los valores almacenados en el localStorage de las consultas, ya que esto permite no realizar peticiones consecutivas, debido a que la data enviada no esta en constante actualización.

bsale2022-front's People

Contributors

alexanderhob avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.