Implemento un paginado con NodeJS, Express y SQLite
El paginado es una funcionalidad importante en cualquier aplicaciĆ³n web que muestra grandes cantidades de datos. A travĆ©s del paginado, los usuarios pueden navegar de manera mĆ”s eficiente a travĆ©s de conjuntos de datos extensos. En este artĆculo, te mostraremos cĆ³mo implementar un paginado con NodeJS, Express y SQLite.
Requisitos previos
Antes de comenzar, debes tener instalado NodeJS en tu sistema. AdemĆ”s, asegĆŗrate de tener npm (Node Package Manager) instalado. TambiĆ©n necesitarĆ”s tener SQLite instalado en tu sistema para poder crear y manipular bases de datos.
ConfiguraciĆ³n inicial
Primero, crea un nuevo directorio para tu proyecto y navega a Ć©l a travĆ©s de la lĆnea de comandos. Luego, ejecuta el siguiente comando para inicializar un proyecto de NodeJS:
npm init -y
Esto crearĆ” un archivo package.json que contendrĆ” la configuraciĆ³n bĆ”sica de tu proyecto.
InstalaciĆ³n de dependencias
A continuaciĆ³n, necesitarĆ”s instalar las dependencias necesarias para tu proyecto. Ejecuta el siguiente comando para instalar Express y SQLite:
npm install express sqlite3
CreaciĆ³n de la base de datos
Crea un archivo llamado database.js en tu directorio y agrega el siguiente cĆ³digo para inicializar y conectarte a una base de datos SQLite:
const sqlite3 = require('sqlite3').verbose();
const db = new sqlite3.Database('database.db');
db.serialize(() => {
db.run("CREATE TABLE if not exists items (id INTEGER PRIMARY KEY, name TEXT)");
});
db.close();
ImplementaciĆ³n del paginado
Crea un archivo llamado app.js y agrega el siguiente cĆ³digo para configurar un servidor Express y realizar consultas paginadas a la base de datos:
const express = require('express');
const db = require('./database');
const app = express();
const itemsPerPage = 10;
app.get('/items', (req, res) => {
const page = parseInt(req.query.page) || 1;
const offset = (page - 1) * itemsPerPage;
db.all('SELECT * FROM items LIMIT ? OFFSET ?', [itemsPerPage, offset], (err, rows) => {
if (err) {
res.status(500).send(err.message);
} else {
res.json(rows);
}
});
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
FinalizaciĆ³n y ejecuciĆ³n
Finalmente, ejecuta el siguiente comando para iniciar tu servidor de NodeJS:
node app.js
Una vez que el servidor estƩ en funcionamiento, puedes hacer consultas paginadas a travƩs de la ruta /items en tu navegador o utilizando herramientas como Postman o cURL.
Ahora deberĆas tener un servidor de NodeJS con Express y SQLite que implementa un paginado efectivo para tus datos. Ā”A disfrutar!