HTMX Fragment & Router

TsgcHTMX_Fragment / TsgcHTMX_Router — hedefli DOM güncellemeleri için bant dışı htmx takas yükleri oluşturur ve URL kalıplarını Delphi işleyici yordamlarına yönlendirir.

TsgcHTMX_Fragment & TsgcHTMX_Router

TsgcHTMX_Fragment, belirli bir DOM öğesi kimliği ve takas stratejisi için doğru biçimlendirilmiş bant dışı htmx takas dizesini oluşturur. TsgcHTMX_Router, gelen HTTP isteklerini kayıtlı Delphi işleyici yöntemlerine göndererek manuel URL ayrıştırmasını ortadan kaldırır.

Bileşen sınıfları

TsgcHTMX_Fragment, TsgcHTMX_Router

Rol

OOB takaslar ve istek yönlendirme

Diller

Delphi, C++ Builder, .NET

Parça oluşturun, isteği yönlendirin

Belirli bir DOM öğesi kimliğini hedefleyen bir bant dışı htmx takas dizesi oluşturmak için TsgcHTMX_Fragment kullanın. If/else zincirleri yazmadan gelen HTTP isteklerini kayıtlı işleyici yöntemlerine göndermek için TsgcHTMX_Router kullanın.

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);

Temel özellikler ve yöntemler

En sık kullanılan üyeler.

TsgcHTMX_Fragment.TargetID

Değiştirilecek DOM öğesinin id'si; htmx'in hx-swap-oob hedefine karşılık gelir.

TsgcHTMX_Fragment.SwapMethod

htmx takas stratejisi: innerHTML, outerHTML, beforebegin, afterend vb.

TsgcHTMX_Fragment.Content

Hedefe eklenecek yeni HTML; basit bir dize veya herhangi bir sgcHTML bileşeninin çıktısı olabilir.

TsgcHTMX_Fragment.Fragment

Salt okunur; BroadcastFragment'e geçirilmeye veya HTTP yanıt gövdesi olarak döndürülmeye hazır, tam olarak biçimlendirilmiş OOB takas dizesini döndürür.

TsgcHTMX_Router.AddRoute

Bir URL kalıbını ve HTTP yöntemi kombinasyonunu bir Delphi işleyici yordamı veya yöntemiyle kaydeder.

TsgcHTMX_Router.HandleRequest

Gelen isteği kayıtlı tüm rotalarla karşılaştırır ve eşleşen işleyiciyi çağırır; hiçbir rota eşleşmezse False döndürür.

Keşfetmeye devam edin

Çevrimiçi yardımBu bileşen için tam API referansı ve kullanım kılavuzu.
Tüm sgcHTML bileşenleri60'tan fazla bileşenin tam özellik matrisine göz atın.
Ücretsiz deneme sürümünü indirin30 günlük deneme sürümü 60.HTML demo projelerini içerir.
FiyatlandırmaTam kaynak kodlu Tekli, Ekip ve Site lisansları.

Başlamaya hazır mısınız?

Ücretsiz deneme sürümünü indirin ve Delphi, C++ Builder ve .NET'te web kullanıcı arabirimleri oluşturmaya başlayın.