State en React

Ya has visto como configurar componentes con props en React, pero ¿cómo puedes definir comportamientos o interacciones con dichos componentes? Para ello necesitas que los componentes puedan definir su estado, y con las props es imposible, pues no pueden ser modificadas por el componente, sólo por su componente padre. Para esto existe this.state, donde los componentes pueden disponer de datos privados modificables a traves de la función this.setState().

Ya sabes que función usar para ajustar this.state, pero ¿Cómo podrías definir un estado inicial del componente? Bien, pues para eso disponemos del constructor de clase. En la función render comprobamos el estado del componente para decidir como va a ser mostrado, y ahora viene la magia: cuando modificamos el estado de un componente, automáticamente se volverán a renderizar todos sus componentes hijos y el propio componente. Esto, además, es bastante ágil gracias al DOM virtual de React.

Props en React

React es una biblioteca de JavaScript que se basa en la fabricación y combinación de componentes para construir interfaces de usuario. Cada componente se define por separado en un archivo javascript, y tiene un aspecto similar a este que sigue, el cual se encontraría en el archivo listaCompra.js:

import React, { Component } from 'react';
import Articulo from './Articulo';

class ListaCompra extends Component {
  render() {
    return (
      <ul>
        <Articulo cantidad="1">Pan</Articulo>
        <Articulo cantidad="6">Leche</Articulo>
        <Articulo cantidad="2">Huevos</Articulo>
      </ul>
    );
  }
}

Las propiedades, que veremos en el código escritas como props, se usan para configurar componentes, y son pasadas desde los componentes padres a los componentes hijos. Es importante recordar que el componente hijo no puede modificarlas, el propietario es el componente padre.

Buscador de texto en Vim

Otro recurso importante que vas a necesitar en Vim es un buscador de textos. Ante el hecho de que el proyecto que permitía el uso de El surfero de plata en vim, ag.vim, ha quedado obsoleto, te podrías decantar por ack.vim. Con ack.vim puedes hacer uso de ack, que no es ni más ni menos que un grep optimizado para programadores.

Instalar ack es bastante sencillo en distribuciones Linux deribadas de Debian.

Búsqueda de archivos en vim

fzf se define a sí mismo como un buscador difuso de línea de comandos para propósitos generales. Más detalladamente, se trata de un filtro para líneas de comandos Unix, que puedes aplicar a listas, archivos, procesos, históricos de comandos, etcétera.

Lo puedes instalar en tu carpeta home clonando su repositorio en GitHub de la siguiente manera:

$ git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf

Luego sólo tienes que ejecutar el script de instalación: