ForgejComponent
pl

jComponent

Pomocniki danych: QUERIFY, STRINGIFY, ENCRYPT, FN, CL, TRANSLATE, UNAUTHORIZED i Thelpers

jComponent 20 · jcomponent@20 jcomponentfrontendutilitiestemplates Uruchomiono z jComponent 20
  • QUERIFY([url], object) buduje ciąg zapytania: wartości null są pomijane, tablice łączone przecinkami, daty zamieniane na teksty ISO, a wszystko jest kodowane. Z url jest do niego dołączany (? lub &), także po metodzie jak w 'POST /api/x'.
  • STRINGIFY(object, [compress], [fields]) to JSON.stringify() z dwiema opcjami: compress: true pomija puste teksty, null i false oraz przycina teksty; fields to lista nazw, które zostają, funkcja (key, value), która decyduje, lub obiekt, w którym name: false pomija pole.
  • ENCRYPT(value, [key], [type]) zamienia tekst lub obiekt w tekst szesnastkowy kończący się kontrolą klucza, a DECRYPT(text, [key], [type]) oddaje wartość lub undefined, gdy klucz albo typ nie są takie same. To zaciemnienie dla przeglądarki, nie bezpieczeństwo: każdy może to odczytać bez klucza.
  • FN('n => n * 2') kompiluje wyrażenie do funkcji i ją zapamiętuje; bez => tekst jest ciałem, a argument nazywa się value.
  • NOOP, EMPTYARRAY i EMPTYOBJECT (zamrożone: nie da się ich zmienić przez pomyłkę), MONTHS i DAYS (nazwy po angielsku) oraz NOW (Date, który jComponent utrzymuje aktualnym).
  • Listy kodów: CLINIT(name, function(next) {}, [expire], [init]) rejestruje listę, którą ładuje function (wywołuje next(value); z tekstem zamiast funkcji adres taki jak GET /api/countries/). CL('a,b', callback) ładuje listy, które nie są załadowane, i zapisuje każdą w DEF.cl.name (oraz w stanie pod tą ścieżką); CLRELOAD(name, callback) ładuje je ponownie.
  • Tłumaczenie: LOCALIZE(text) ładuje słownik w formacie plików zasobów Total.js (key : translation, po jednym w wierszu, // dla komentarzy), a TRANSLATE(text) zastępuje każde @(text) jego tłumaczeniem (tym samym tekstem, gdy go nie ma). Kluczem jest T plus HASH() tekstu w systemie o podstawie 36.
  • UNAUTHORIZED(...names) zwraca false, gdy window.user ma jedno z uprawnień (user.permissions lub user.roles, lista albo obiekt) lub jest sa / su, a w przeciwnym razie true (także gdy nie ma użytkownika).
  • Thelpers (ten sam obiekt co Tangular.helpers, a Ta to Tangular) zawiera pomocniki szablonów: dodaj jednego przez Thelpers.name = function(value, ...arguments), gdzie this to model, i użyj go jako {{ value | name(argument) }}.
public/index.html
<!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>
Wypróbuj w przeglądarce

Edytuj przykład i uruchom go. Działa w izolowanej ramce w Twojej przeglądarce; nic nie jest wysyłane na nasz serwer.

Podgląd