HTMX Fragment & Router

TsgcHTMX_Fragment / TsgcHTMX_Router — costruisce payload di scambio htmx out-of-band per aggiornamenti DOM mirati e instrada i pattern URL a procedure handler Delphi.

TsgcHTMX_Fragment & TsgcHTMX_Router

TsgcHTMX_Fragment costruisce la stringa di scambio htmx out-of-band correttamente formata per un dato id di elemento DOM e una strategia di scambio. TsgcHTMX_Router invia le richieste HTTP in arrivo a metodi handler Delphi registrati, eliminando il parsing manuale degli URL.

Classi del componente

TsgcHTMX_Fragment, TsgcHTMX_Router

Ruolo

Scambi OOB & routing delle richieste

Linguaggi

Delphi, C++ Builder, .NET

Costruisci un frammento, instrada una richiesta

Usa TsgcHTMX_Fragment per costruire una stringa di scambio htmx out-of-band che punta a un id specifico di elemento DOM. Usa TsgcHTMX_Router per inviare le richieste HTTP in arrivo a metodi handler registrati senza scrivere catene if/else.

uses
  sgcHTMX_Fragment, sgcHTMX_Router;

// Build and broadcast an OOB fragment:
var
  oFrag: TsgcHTMX_Fragment;
begin
  oFrag := TsgcHTMX_Fragment.Create(nil);
  try
    oFrag.TargetID   := 'kpi-revenue';
    oFrag.SwapMethod := 'innerHTML';
    oFrag.Content    := FormatFloat('#,##0', FRevenue);
    oHTMX.BroadcastFragment(oFrag.Fragment);
  finally
    oFrag.Free;
  end;
end;

// Route requests with TsgcHTMX_Router:
var
  oRouter: TsgcHTMX_Router;
begin
  oRouter := TsgcHTMX_Router.Create(nil);
  oRouter.AddRoute('GET',  '/customers',     HandleCustomers);
  oRouter.AddRoute('POST', '/customer/save', HandleCustomerSave);
  oRouter.HandleRequest(AContext, ARequest, AResponse);
end;
TsgcHTMX_Fragment *oFrag = new TsgcHTMX_Fragment(NULL);
try
{
  oFrag->TargetID   = "kpi-revenue";
  oFrag->SwapMethod = "innerHTML";
  oFrag->Content    = FormatFloat("#,##0", FRevenue);
  oHTMX->BroadcastFragment(oFrag->Fragment);
}
__finally { delete oFrag; }

TsgcHTMX_Router *oRouter = new TsgcHTMX_Router(NULL);
oRouter->AddRoute("GET",  "/customers",     HandleCustomers);
oRouter->AddRoute("POST", "/customer/save", HandleCustomerSave);
oRouter->HandleRequest(AContext, ARequest, AResponse);
var frag = new TsgcHTMX_Fragment();
frag.TargetID   = "kpi-revenue";
frag.SwapMethod = "innerHTML";
frag.Content    = revenue.ToString("N0");
htmxEngine.BroadcastFragment(frag.Fragment);

var router = new TsgcHTMX_Router();
router.AddRoute("GET",  "/customers",     HandleCustomers);
router.AddRoute("POST", "/customer/save", HandleCustomerSave);
router.HandleRequest(context, request, response);

Proprietà e metodi principali

I membri utilizzati più frequentemente.

TsgcHTMX_Fragment.TargetID

id dell'elemento DOM da sostituire; corrisponde al target hx-swap-oob di htmx.

TsgcHTMX_Fragment.SwapMethod

Strategia di scambio htmx: innerHTML, outerHTML, beforebegin, afterend, ecc.

TsgcHTMX_Fragment.Content

Il nuovo HTML da inserire nel target; può essere una semplice stringa o l'output di qualsiasi componente sgcHTML.

TsgcHTMX_Fragment.Fragment

Di sola lettura; restituisce la stringa di scambio OOB completamente formata pronta da passare a BroadcastFragment o restituire come corpo della risposta HTTP.

TsgcHTMX_Router.AddRoute

Registra una combinazione di pattern URL e metodo HTTP con una procedura o metodo handler Delphi.

TsgcHTMX_Router.HandleRequest

Controlla la richiesta in arrivo rispetto a tutte le route registrate e chiama il handler corrispondente; restituisce False se nessuna route corrisponde.

Continua ad esplorare

Guida in lineaRiferimento API completo e guida all'uso per questo componente.
Tutti i componenti sgcHTMLSfoglia la matrice completa di 60+ componenti.
Scarica la versione di prova gratuitaLa versione di prova di 30 giorni include i progetti demo 60.HTML.
PrezziLicenze Single, Team e Site con codice sorgente completo.

Pronto per iniziare?

Scarica la versione di prova gratuita e inizia a creare interfacce web in Delphi, C++ Builder e .NET.