18: Comenzando nuestra aplicaci贸n

 馃帹 Paso 1: Configurar los estilos CSS

Lo primero que vamos a hacer es copiar el CSS proporcionado en los recursos del programa:

  1. Abre el enlace de los recursos o notas del programa

  2. Copia todo el contenido CSS que encontrar谩s all铆

  3. Vuelve a tu proyecto en VS Code

  4. Abre el archivo src/index.css

  5. Borra todo el contenido actual del archivo

  6. Pega el nuevo CSS que copiaste

css

/* As铆 deber铆a verse tu index.css despu茅s de pegar */

body {

  margin: 0;

  font-family: "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans",

    "Droid Sans", "Helvetica Neue", sans-serif;

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

}


.title {

  color: #738f93;

  font-size: 40px;

  font-family: fantasy, sans-serif;

  margin-bottom: 0;

}


/* ... resto del CSS proporcionado */



馃搵 Paso 2: Limpiar y preparar App.js

Abre el archivo src/App.js y vamos a limpiarlo:

javascript

// Borra TODO el contenido actual y deja solo esto:

import './App.css';


function App() {

  return (

    <div className="App">

      

    </div>

  );

}


export default App;

馃彔 Paso 3: Crear la estructura b谩sica de la Home

Dentro del componente App, vamos a construir la p谩gina de inicio:

import './App.css';


function App() {

  return (

    <div className="App">

      <header className="App-header">

        {/* T铆tulo de la aplicaci贸n */}

        <h1 className="title">Rick & Morty</h1>

        

        {/* La imagen ir谩 aqu铆 */}

        

        {/* El bot贸n ir谩 aqu铆 */}

      </header>

    </div>

  );

}


export default App;

Nota: Observa que usamos className en lugar de class (esto es espec铆fico de React/JSX).

馃柤️ Paso 4: Importar y mostrar la imagen

4.1 Crear la carpeta para im谩genes

Dentro de src/, crea una nueva carpeta llamada img:

  • Haz clic derecho en la carpeta src

  • Selecciona "New Folder"

  • N贸mbrala img

4.2 Agregar la imagen a la carpeta

  • Descarga la imagen desde los recursos del programa

  • Arr谩strala y su茅ltala dentro de la carpeta img que creaste

  • Aseg煤rate de que se llame algo como rick-morty.png

4.3 Importar la imagen en App.js

// Agrega esta l铆nea al inicio del archivo, despu茅s del import de App.css

import imageRickMorty from "./img/rick-morty.png";

// Ajusta el nombre seg煤n c贸mo se llame tu archivo


function App() {

  return (

    <div className="App">

      <header className="App-header">

        <h1 className="title">Rick & Morty</h1>

        

        {/* Imagen de Rick & Morty */}

        <img 

          src={imageRickMorty} 

          alt="Rick & Morty" 

          className="img-home" 

        />

        

        {/* El bot贸n ir谩 aqu铆 */}

      </header>

    </div>

  );

}

Explicaci贸n:

  • src={imageRickMorty}: Usamos llaves {} porque estamos usando una variable JavaScript

  • alt="Rick & Morty": Texto alternativo para accesibilidad

  • className="img-home": Clase CSS que definimos en index.css

馃敇 Paso 5: Crear el bot贸n "Buscar personajes"

Agrega el bot贸n despu茅s de la imagen:

javascript

function App() {

  return (

    <div className="App">

      <header className="App-header">

        <h1 className="title">Rick & Morty</h1>

        

        <img 

          src={imageRickMorty} 

          alt="Rick & Morty" 

          className="img-home" 

        />

        

        {/* Bot贸n para buscar personajes */}

        <button className="btn-search">

          Buscar personajes

        </button>

      </header>

    </div>

  );

}

⚡ Paso 6: Agregar funcionalidad al bot贸n

6.1 Crear la funci贸n para manejar el clic

javascript

import './App.css';

import imageRickMorty from "./img/rick-morty.png";


function App() {

  // Funci贸n que se ejecutar谩 al hacer clic en el bot贸n

  const reqApi = () => {

    console.log("¡Hiciste clic en el bot贸n!");

    // Aqu铆 luego llamaremos a la API

  };


  return (

    <div className="App">

      <header className="App-header">

        <h1 className="title">Rick & Morty</h1>

        

        <img 

          src={imageRickMorty} 

          alt="Rick & Morty" 

          className="img-home" 

        />

        

        {/* Bot贸n con evento onClick */}

        <button 

          onClick={reqApi} 

          className="btn-search"

        >

          Buscar personajes

        </button>

      </header>

    </div>

  );

}

6.2 Versi贸n alternativa con funci贸n flecha m谩s expl铆cita:

javascript

// Otra forma de escribir la misma funci贸n

const reqApi = () => {

  console.log("Click detectado - funci贸n ejecutada");

};

馃憗️ Paso 7: Verificar que todo funciona

7.1 Guarda todos los cambios (Ctrl + S o Cmd + S)

7.2 Abre tu navegador en http://localhost:3000

7.3 Deber铆as ver:

  • El t铆tulo "Rick & Morty" en color azul-gris谩ceo

  • La imagen de Rick & Morty centrada

  • Un bot贸n verde que dice "Buscar personajes"

7.4 Probar la funcionalidad:

  1. Abre las Herramientas de Desarrollo del navegador (F12 o Ctrl+Shift+I)

  2. Ve a la pesta帽a "Console"

  3. Haz clic en el bot贸n "Buscar personajes"

  4. Deber铆as ver el mensaje "¡Hiciste clic en el bot贸n!" en la consola

馃幆 C贸digo completo de App.js hasta ahora:

javascript

import './App.css';

import imageRickMorty from "./img/rick-morty.png";


function App() {

  // Funci贸n que se ejecutar谩 al hacer clic

  const reqApi = () => {

    console.log("¡Hiciste clic! Pronto llamaremos a la API");

  };


  return (

    <div className="App">

      <header className="App-header">

        <h1 className="title">Rick & Morty</h1>

        

        <img 

          src={imageRickMorty} 

          alt="Rick & Morty" 

          className="img-home" 

        />

        

        <button 

          onClick={reqApi} 

          className="btn-search"

        >

          Buscar personajes

        </button>

      </header>

    </div>

  );

}


export default App;

馃敡 Paso 8: Personalizaciones opcionales

8.1 Cambiar el t铆tulo:

javascript

<h1 className="title">Rick y Morty API</h1>

8.2 Cambiar el texto del bot贸n:

javascript

<button onClick={reqApi} className="btn-search">

  Ver todos los personajes

</button>

8.3 Modificar estilos (en index.css):

css

/* Para cambiar el color del t铆tulo */

.title {

  color: #1ba94c;  /* Verde del bot贸n */

  /* ... resto de propiedades */

}


/* Para cambiar el color del bot贸n */

.btn-search {

  background-color: #282c34;  /* Azul oscuro */

  /* ... resto de propiedades */

}

馃悰 Soluci贸n de problemas comunes:

Problema 1: La imagen no aparece

javascript

// Verifica:

// 1. Que la ruta sea correcta

import imagen from "./img/rick-morty.png"; // ¡Cuidado con may煤sculas!

// 2. Que el archivo exista en la carpeta img

// 3. Que la extensi贸n sea correcta (.png, .jpg, etc.)

Problema 2: Los estilos no se aplican

css

/* Verifica en index.css que tengas: */

.img-home {

  width: 500px;

  padding: 50px;

}

/* Si no est谩, a帽谩delo */

Problema 3: El bot贸n no hace nada en consola

javascript

// Verifica:

// 1. Que escribiste onClick (con C may煤scula)

// 2. Que la funci贸n se llama reqApi (exacto)

// 3. Que abriste la consola del navegador (F12)

馃搳 Estructura actual de tu proyecto:

text

rick-morty-app/

├── src/

│   ├── img/

│   │   └── rick-morty.png

│   ├── App.js

│   ├── App.css

│   └── index.css

├── public/

└── package.json

馃帀 ¡Felicidades!

Has creado la interfaz visual completa de la p谩gina de inicio de tu aplicaci贸n. Tienes:

✅ T铆tulo estilizado
✅ Imagen importada correctamente
✅ Bot贸n con estilos atractivos
✅ Funcionalidad b谩sica (console.log en clic)

En el pr贸ximo tutorial implementaremos la llamada a la API real para obtener los personajes de Rick & Morty.


馃挕 Consejo: ¿Quieres ver c贸mo se ve en diferentes dispositivos? Usa las herramientas de desarrollo del navegador (F12) y activa el modo responsive.

¿C贸mo se ve tu aplicaci贸n hasta ahora? ¡Comp谩rtelo en los comentarios


Comentarios

Entradas m谩s populares de este blog

9.3-Tutorial de Componentes React con Props -SSS

9.6-Ciclo de Vida de un Componente React

9-Componentes en React-estado