Pomocníci pro data: QUERIFY, STRINGIFY, ENCRYPT, FN, CL, TRANSLATE, UNAUTHORIZED a Thelpers
QUERIFY([url], object)sestaví řetězec dotazu: hodnotynullse přeskočí, pole se spojí čárkami, data se změní na ISO texty a vše se zakóduje. S url se připojí k ní (?nebo&), i za metodou jako v'POST /api/x'.STRINGIFY(object, [compress], [fields])jeJSON.stringify()se dvěma volbami:compress: truevynechá prázdné texty,nullafalsea ořezává texty;fieldsje seznam názvů, které se ponechají, funkce(key, value), která rozhoduje, nebo objekt, kdename: falsepole vynechá.ENCRYPT(value, [key], [type])změní text nebo objekt na hexadecimální text, který končí kontrolou klíče, aDECRYPT(text, [key], [type])vrátí hodnotu, neboundefined, když klíč nebo typ nejsou stejné. Je to obfuskace pro prohlížeč, ne bezpečnost: kdokoli ji přečte bez klíče.FN('n => n * 2')zkompiluje výraz do funkce a zapamatuje si ji; bez=>je text tělem a argument se jmenujevalue.NOOP,EMPTYARRAYaEMPTYOBJECT(zmrazené: nelze je omylem změnit),MONTHSaDAYS(názvy v angličtině) aNOW(Date, který jComponent udržuje aktuální).- Seznamy kódů:
CLINIT(name, function(next) {}, [expire], [init])zaregistruje seznam, kterýfunctionnačte (volánext(value); s textem místo funkce adresa jakoGET /api/countries/).CL('a,b', callback)načte seznamy, které nejsou načteny, a každý uloží doDEF.cl.name(a do stavu na této cestě);CLRELOAD(name, callback)je načte znovu. - Překlad:
LOCALIZE(text)načte slovník ve formátu zdrojových souborů Total.js (key : translation, jeden na řádek,//pro komentáře) aTRANSLATE(text)nahradí každé@(text)jeho překladem (stejným textem, když žádný není). Klíč jeTplusHASH()textu v základu 36. UNAUTHORIZED(...names)vrátífalse, kdyžwindow.usermá jedno z oprávnění (user.permissionsnebouser.roles, seznam nebo objekt) nebo jesa/su, a jinaktrue(i když není uživatel).Thelpers(stejný objekt jakoTangular.helpers, aTajeTangular) obsahuje pomocníky šablon: přidejte jednoho přesThelpers.name = function(value, ...arguments), kdethisje model, a použijte jej jako{{ value | name(argument) }}.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jComponent</title>
<link rel="stylesheet" href="//cdn.componentator.com/spa.min@20.css" />
<script src="//cdn.componentator.com/spa.min@20.js"></script>
</head>
<body>
<p class="out"></p>
</body>
</html> Vyzkoušejte to ve svém prohlížeči
Upravte příklad a spusťte ho. Běží v izolovaném rámu ve vašem prohlížeči; na náš server se nic neposílá.
Náhled