Configuración de ESLint
Clase 6 de 33 • Curso de Desarrollo de Aplicaciones Web con Gatsby JS
Contenido del curso
Preparando el entorno
Fundamentos de Gatsby
Creando la vista con React
Graphql en Gatsby
Usando plugins en Gatsby
Stripe checkout
Generando páginas programáticamente
- 24

Creando páginas en función de los datos
08:57 min - 25

Manejo de Gatsby Templates
13:39 min - 26

Terminando la Vista de Detalle de los Productos
05:58 min - 27

StaticQuery vs. useStaticQuery
03:23 min - 28

Construyendo el Carrito de Compras: useContext
08:18 min - 29

Construyendo el Carrito de Compras: Vista
09:22 min - 30

Construyendo el Carrito de Compras: Agregar productos al carrito
08:44 min - 31

Comprando productos
08:34 min
Gatsby a producción
¿Qué es ESLint?
ESLint es una herramienta de linting para Javascript. Un linter es un programa que se encarga de revisar el código escrito y es capaz de señalar errores y posibles bugs que podemos corregir para mejorar nuestros programas, de esta manera tenemos acceso a los errores incluso antes de que sucedan.
¿Por qué usar ESLint?
Gracias a que JavaScript es un lenguaje dinámico y débilmente tipado, especialmente propenso a errores por parte del programador es que ESLint es muy útil. Esta herramienta nos ayuda a prevenir la manera de antaño para encontrar errores en este lenguaje.
El objetivo de ESLint es encontrar errores mucho antes de que sucedan, de manera automática y sin necesidad de ejecutar el código. Esto nos permite reparar los errores muy rápido y agilizar nuestro tiempo de desarrollo.
ESLint está basado en reglas configurables y viene con un conjunto preestablecido que podemos usar como punto de inicio y más adelante poder habilitar o deshabilitar ciertas reglas considerando nuestro estilo de código o incluso una convención en nuestro equipo de desarrollo.
ESLint y Gatsby
Gatsby incluye una configuración integrada de ESLint . Para la mayoría de los usuarios, la configuración incorporada de ESLint es todo lo que necesita. Sin embargo, si tienes una configuración personalizada o una convención en tu equipo de trabajo podemos configurarlo.
instalación
Ya que Gatsby viene con ESLint configurado de base podemos añadir nuestra configuración inicializando desde la herramienta en node_modules:
./node_modules/.bin/eslint --init
Este comando va a lanzar un proceso de ayuda para configurar ESLint paso a paso, revisemos los elementos:
- ¿Con qué objetivo vamos a usar ESLint?
Revisar la sintaxis; revisar la sintaxis y encontrar problemas; o revisar sintaxis, encontrar problemas y forzar un estilo de código.
En nuestro caso basta con revisar la sintaxis y encontrar problemas.
- ¿Qué tipo de módulos va a utilizar nuestro proyecto?
Utilizaremos Javascript modules.
- ¿Qué Framework/Biblioteca va a usar nuestro proyecto?
Nuestro proyecto va a utilizar React.
- ¿En qué entorno corre nuestro proyecto?
Para nuestro proyecto podemos seleccionar ambas.
- ¿En qué formato deseas el archivo de configuración?
- Por último, Hace falta una dependencia para trabajar con el estándar de JavaScript, ¿quieres instalarla ahora?
Continúa con Y, esto va a instalar una herramienta que nos va a permitir trabajar con React.
El resultado de este proceso es un archivo llamado .eslintrc.js con el siguiente contenido:
module.exports = { env: { browser: true, es6: true, node: true }, extends: 'eslint:recommended', globals: { Atomics: 'readonly', SharedArrayBuffer: 'readonly' }, parserOptions: { ecmaFeatures: { jsx: true }, ecmaVersion: 2018, sourceType: 'module' }, plugins: ['react'], rules: {} }
Vamos a cambiar la propiedad extends, que nos ayuda a heredar una serie de configuraciones pre establecidas y recomendadas. El proceso de init nos ayudó a instalar un plugin para react, vamos a heredar de él en extends.
"extends": [ "eslint:recommended", "plugin:react/recommended" ]
Por último, vamos a revisar la opción de rules, esta sección nos permite configurar reglas en particular. Podemos habilitar o deshabilitar reglas para el linter, por ejemplo, que nos notifique con un error o advertencia si no colocamos los punto y coma en el proyecto.
"rules": { "semi": "warning", },
Gracias a que tenemos configurado el plugin de React y React busca mejores prácticas también hay reglas orientadas al desarrollo de React, podemos modificarlas de igual manera, por ejemplo, remover la linterna para prop-types:
"rules": { "semi": "off", "react/prop-types": 0, "react/display-name": 0, },
Esta es la manera de configurar ESLint de manera manual, recuerda que la herramienta nos ayuda a prevenir errores incluso antes de ejecutar el código y ver los errores en consola.