Primera aplicación con Total.js, un gran framework para Node.js

Primera aplicación con Total.js, un gran framework para Node.js
Total.js es un potente y sencillo framework javascript que trabaja bajo Node.js y nos proporciona todas las dependencias necesarias para poder construir completas aplicaciones web.

Cuando digo que nos proporciona todas las dependencias significa que únicamente instalando total.js vamos a tener disponible todo lo necesario para empezar y terminar nuestro proyecto, sistema de templates, servicios http, soporte para api restfull, middlewares, rutas, subir, bajar y leer archivos, websockets y un sinfín de funcionalidades.

Este tutorial simplemente va a ser una pequeña introducción para crear nuestra primera aplicación con Total.js, así que vamos a empezar, cómo verás es muy muy sencillo.

Primera aplicación con Total.js

La única dependencia que necesitas tener instalada en tu equipo es Node.js, una vez lo tengas abre una terminal y ejecuta el siguiente comando para instalar de forma global total.js, crear un proyecto e instalar total.js dentro de nuestro proyecto.

No necesitamos nada más para empezar a desarrollar nuestra app, eso es todo.

Ahora vamos a crear el archivo principal para tener el servidor preparado, así que crea un archivo llamado debug.js y añade la siguiente línea.

Con esa línea simplemente preparamos el servidor con el debug habilitado, por lo tanto podremos ver los errores, de la misma forma podríamos crear más archivos, por ejemplo production.js con el siguiente código.

Este archivo sería el que tendríamos en una aplicación en producción, de esta forma el debug estaría deshabilitado por defecto.

Lo ideal será tener un debug.js, production.js y release.js en la misma aplicación, así podremos manejar todos los entornos que necesitemos.

Desarrollar un controlador con Total.js

Total.js no tiene un marco mvc pero se basa en este patrón, así que crea un archivo controllers/home.js y añade el siguiente código.

Lo primero que debemos hacer es definir las rutas, para ellos utilizamos F (framework).

Haciendo uso de la función route le decimos el path y la función que representará su lógica. Un poco más abajo definimos la función view_index, donde utilizando la función view del framework (this === framework === F) llamamos a la función view, le pasamos el nombre del archivo y le pasamos una variable.

Templates en Total.js

La template home.html la irá a buscar al directorio views de la raíz, así que vamos a crear un archivo llamado home.html dentro del directorio views y vamos a añadir el siguiente código.

Cómo puedes ver la sintaxis es muy sencilla, todos los datos enviados a la vista están disponibles dentro del objeto model, si por ejemplo queremos hacer un foreach o un if los podemos definir de la siguiente forma.

Antes de probar este código debemos crear una template especial de Total.js llamada layout.html, este archivo lo irá a buscar el framework antes de renderizar otra template, así que créalo y añade el siguiente código.

Este archivo será utilizado por todos los archivos de vista de la aplicación de forma automática y el contenido de cada uno de ellos será renderizado dentro de @{body}, además, por si fuera poco, todo el código html es comprimido de forma automática para tener mejores tiempos de carga.

Ahora ya podemos lanzar nuestra aplicación con el siguiente comando.

Si visitas la url http://127.0.0.1:8000/ verás que el mensaje Hola Mundo!, así que ya tenemos nuestra primera aplicación con Total.js, espero que te haya parecido interesante, en breve habrá un curso disponible sobre Total.js en la plataforma cursosdesarrolloweb.

También te recomiendo si te interesa este mundo los cursos de NodeJS + Express 4 y el curso de AdonisJS, ambos grandes frameworks para NodeJS.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. ACEPTAR

Aviso de cookies