Kodi TypeScript
TypeScript është gjuha e parazgjedhur e kutisë Code. Shënimet e tipave hiqen gjatë përpilimit dhe pastaj kodi ekzekutohet brenda motorit QuickJS.
API-ja
Section titled “API-ja”| Simboli | Roli |
|---|---|
input | Vlera e marrë mbi portën e hyrjes |
vars | Një fotografi vetëm për lexim e variablave të ekzekutimit |
__vars | Një pamje për lexim / shkrim: get, set, has, delete, clear, keys, toObject |
console.log / .info / .warn / .error | Shkruan brenda regjistrit të ekzekutimit |
fetch(...) | Thirrje HTTP, e drejtuar nga muri i zjarrit |
return | Vlera e kthyer niset mbi portën result |
Trupi mbështillet brenda një funksioni asinkron: return dhe await
funksionojnë në nivelin e sipërm.
Shembull
Section titled “Shembull”interface Commande { id: number; montant: number; statut: 'payee' | 'attente' | 'annulee';}
const commandes = input as Commande[];
const payees = commandes.filter((c) => c.statut === 'payee');const total = payees.reduce((s, c) => s + c.montant, 0);
console.log(`${payees.length} commandes payées, total ${total} €`);
__vars.set('totalPaye', total);
return { nombre: payees.length, total };Biblioteka e integruar
Section titled “Biblioteka e integruar”E disponueshme si variabël globale dhe përmes require(), pa deklaruar
asgjë brenda packages:
| Globalja | Paketa |
|---|---|
_, lodash | lodash |
moment | moment |
uuid | uuid |
nanoid | nanoid |
CryptoJS | crypto-js |
Ajv | ajv |
ajvFormats | ajv-formats |
chai, expect, assert | chai |
cheerio | cheerio |
xml2js | xml2js |
const signature = CryptoJS.HmacSHA256(input.corps, vars.secret).toString();return { signature };Një require() mbi një modul të padisponueshëm lëshon një gabim të qartë.
Të presësh dhe të thërrasësh
Section titled “Të presësh dhe të thërrasësh”const reponse = await fetch(`${vars.baseUrl}/sante`);const corps = await reponse.json();if (corps.statut !== 'ok') throw new Error(`état ${corps.statut}`);return corps;Thirrja kalon përmes murit të zjarrit si çdo trafik tjetër dhe ndërpritet kur ndalon ekzekutimi ose kur tejkalohet koha.
Paketat e jashtme
Section titled “Paketat e jashtme”Deklarojini brenda packages (npm); ato paketohen një herë dhe pastaj ngrihen
jashtë linje.
Përputhshmëria me Postman dhe Bruno
Section titled “Përputhshmëria me Postman dhe Bruno”I njëjti mjedis ekspozon shtresat pm.* dhe bru.* — shihni
Kodin JavaScript.