ForgeDocumentație
ro

Documentație

Începeți cu Total.js

Total.js 5 · total5@0.0.19 guideinstallfirst app Executată cu Total.js 5

Total.js 5 este pachetul npm total5. Ai nevoie de Node.js (exemplele de pe acest site rulează pe Node.js 24) și de un folder gol. Creează proiectul și instalează pachetul:

mkdir hello && cd hello
npm init -y
npm install total5

Scriptul de pornire este un fișier numit index.js în rădăcina proiectului. Încarcă framework-ul și pornește serverul:

require('total5');

Total.run({ port: 8000 });

Acesta este tot codul pe care îl scrii pentru a porni. Fișierele din folderele proiectului (vezi pagina despre structura proiectului) sunt încărcate automat. Creează aceste trei fișiere.

Un controller declară rutele. ROUTE('GET /') fără handler ar afișa vizualizarea cu același nume; aici handlerul randează views/index.html cu un model:

controllers/index.js
exports.install = function() {
	ROUTE('GET /', home);
	ROUTE('POST /greet/ --> *Greet/say');
};

function home($) {
	$.view('index', { title: 'Hello Total.js' });
}

O acțiune are propria validare. Ruta de mai sus rulează Greet/say cu corpul JSON al cererii, iar framework-ul respinge un corp care nu se potrivește cu input:

definitions/greet.js
NEWACTION('Greet/say', {
	name: 'Say hello',
	input: '*name:String',
	action: function($, model) {
		$.callback({ message: 'Hello, ' + model.name + '!' });
	}
});

O vizualizare este HTML cu blocuri @{...}. views/layout.html învelește fiecare vizualizare, iar @{body} este locul vizualizării:

views/layout.html
<!DOCTYPE html>
<html>
<head><meta charset="utf-8" /><title>Hello</title></head>
<body>@{body}</body>
</html>
views/index.html
<h1>@{model.title}</h1>

Porniți aplicația cu node index.js. În modul implicit debug, aplicația repornește când modificați un fișier și afișează adresa în terminal. Pentru modul release, utilizați node index.js --release. Ghidul modurilor de rulare explică diferențele.