यदि आप पारंपरिक रूप से बनाया गया है. वेनवीसी MVC अनुप्रयोग, आप जानते हैं कि जब उपभोक्ता पृष्ठों के बीच नेविगेट करते हैं तो "अंग्रेषित" समस्या को डर लगता है. पूरा पृष्ठ फिर से लोड होता है, ब्राउज़र क्रोमोलिंग, सामग्री को नए पृष्ठ के रूप में फिट करता है. यह काम नहीं करता है, लेकिन यह काम नहीं करता है. महसूस किया जा रहा है आधुनिक.
सर्वर से अधूरा एचटीएमएल टुकड़े वापस लाने की तकनीक और उन्हें डोम में बदलने के इस - और यह नया नहीं है। मैं इस पैटर्न का उपयोग कर रहा हूँ। XMLHttpRequest.. क्या बदल गया है कैसे गहराई यह HMAX के साथ हो गया है.
HMAX हमें वह करने के लिए एक डीएली तरीका देता है जो हम हमेशा किया है: वापस सर्वर-ट्ड एचटीएमएल तथा इसे पृष्ठ पर स्विच करें. कोई और लेखन जावास्क्रिप्ट नहीं है हर सम्पर्क के लिए. "सही" सर्वर विकास और चिकना उपयोगकर्ता अनुभव के बीच और अधिक चुनाव. HTMX, हम दोनों को प्राप्त करने के लिए, हम दोनों मिलता है.
मित्र आलेख: यह लेख मेरे साथी लेख में दिया गया है: HMMMX विस्तार के एक वुल्फहिमल-स्टिंग विस्तार का उपयोग करता है और सी.नेट कोर के साथ इस्तेमाल करता है.
इस लेख में, मैं आपको दिखाता हूँ कि कैसे HMMAX अच्छी तरह से सक्षम करता है ACAT पक्षपाती, कैसे बढ़िया है HMAX. NiT पुस्तकालय यह भी बेहतर बनाता है, और कैसे मैं ज़्यादातर लोगों का कहना है कि अलग - अलग भाषाएँ बोलनेवाले भाई - बहनों का हौसला बढ़ाया जाता है । नुु पैकेज ने HMMX का उपयोग कम कॉन्फ़िगरेशन के साथ प्रभावशाली पटन प्रदान किया है.
इस तरह के उपकरण के लिए तैयार किया गया नमूना बहुत ही सरल है, जैसे कि (अंग्रेज़ी) संस्करण में नमूना के टुकड़े, रास्टल ने विसबो फ्रेम है, और विस्तृत वेब वातावरण HTML-पर-पर-प्रयोगात्मक पैटर्नों को ग्रहण कर रहा है। यह एक अच्छा समय है कि सर्वर-कार्य किए जा रहे अनुप्रयोगों को बनाने के लिए एक अच्छा समय है।
HMMX एक पुस्तकालय है जो आपको आधुनिक ब्राउज़र विशेषताओं को सीधे एचटीएमएल से एक्सेस करने देता है, बजाए जावास्क्रिप्ट को लिखने के. यह HTML विस्तार देता है जो आपको AJJAX निवेदन, सामग्री बनाने देता है, और आपके मार्कअप छोड़ने के बिना अमीर संचार - सभी बनाता है.
कुंजी गुण जो आप प्रायः उपयोग करेंगे:
hx-get, hx-post, hx-put, hx-delete - एचटीटीपी निवेदन बनाएंhx-target - जवाब देने के लिए कहां जाएँ इसे निर्दिष्ट करेंhx-swap - नियंत्रण कैसे सामग्री बदला जाता है (एचटीएमएल, बाहरीएचटीएमएल, आदि.)hx-trigger - परिभाषित करें क्या निवेदन ट्रिगर करता है ( क्लिक करें, परिवर्तन, लोड आदि.)hx-push-url - बिना पूर्ण पृष्ठ के ब्राउज़र यूआरएल को अद्यतन करेंयहाँ इसकी खूबसूरती है: आप अभी भी सर्वर- साइड कोड लिख रहे हैं, लौट कर सर्वर-चित एचटीएमएल. कोई JSON-संत्र, कोई ग्राहक नमूना नहीं है. सिर्फ अच्छा पुराने द्वारा तार के ऊपर एचटीएमएल.
HMMX से पहले, हम काफी अधिक समारोह के साथ एक ही प्रभाव प्राप्त किया. यहाँ क्या आंशिक अद्यतन की तरह लग रहा है जेजी के युग में की तरह लग रहा था:
// jQuery circa 2010
$('#load-more').click(function() {
$.ajax({
url: '/posts/page/' + currentPage,
success: function(html) {
$('#posts-container').append(html);
currentPage++;
}
});
});
और पहले भी, वैनीला के जावास्क्रिप्ट के साथ:
// Vanilla JS circa 2005
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
document.getElementById('content').innerHTML = xhr.responseText;
}
};
xhr.open('GET', '/partial-content', true);
xhr.send();
सर्वर के किनारे के पैटर्न एक समान है - वापस एचटीएमएल टुकड़े, उन्हें डोम में बदलने के लिए. HMAX सिर्फ जावास्क्रिप्ट से इस तर्क को HTML गुणों में खिसकाता है, इसे scriririal, खोज, और कहीं भी कम त्रुटिPiriable. संक्षिप्त तकनीक नहीं है, यह इंटरफेस नहीं है.
एनईएस.नेटटी विकासकर्ता सालों से ऐसा कर रहे हैं. वेब कैश्स में अद्यतन (2005), PartialView() एमवीसी में एक दिन से, Html.RenderAction() Grarat टुकड़े - हमेशा से वहाँ रहा है क्षमता. जो हमारी कमी थी वह ग्राहकों के पक्ष में यह तार करने के लिए एक सुंदर, तुच्छ तरीका था. HMMX पूरी तरह से भर जाता है.
विस्तृत उद्योग इन पैटर्नों को फिर से खोज रहा है। पद "SSSR" (S-S-S-SR), "के-S-Sebandd रेंडरिंग" की तरह है और "देशीय निर्माण" वास्तव में क्या सर्वर के दोनों स्थानों में हमेशा किया गया है, लेकिन ताजा आँखों के साथ वर्णन कर रहे हैं। यह उचित है कि सर्वर के पास के दृष्टिकोण, काम करता है, और सही उपकरण प्रदान करता है - उपयोगकर्ता के साथ बढ़िया अनुभव प्रदान करता है।
पहले, अपने खाका में HMSX शामिल करें. आप एक CDN प्रयोग कर सकते हैं या स्थानीय रूप से यह सेवा कर सकते हैं:
<script src="https://unpkg.com/[email protected]"></script>
यह है। कोई चरण नहीं बनाया, कोई smpol कॉन्फ़िगरेशन नहीं है। सिर्फ एक स्क्रिप्ट टैग में छोड़ दें और आप अन्यजातियों के लिए बंद कर रहे हैं।
क्लाएंट- साइड रीटेंशन के लिए (प्रयोग/ घंटािंग तत्वों, के लिए), स्थानीय यूआई स्थिति, यू. एस. मेल खाने वाले HAMX ठीक से. सिर्फ 15केबी हॉड पर, यह Vueue/ reprecing के बिना रीग्रेसन रिवेशन प्रदान करता है.
<script defer src="https://cdn.jsdelivr.net/npm/[email protected]/dist/cdn.min.js"></script>
यहाँ है कि कैसे वे एक साथ काम करते हैं:
<div x-data="{ open: false }">
<button x-on:click="open = !open">Toggle</button>
<div x-show="open" x-transition>
<button hx-get="/api/data" hx-target="#results">Load Data</button>
</div>
</div>
आल्सा स्वयं स्थानीय यूआई ( टॉगल), HMAX संभाल सर्वर कॉल करता है. इस लेख के दौरान, आप इस पैटर्न को फिर से प्रारंभ करने के लिए सक्षम देखेंगे, सर्वर संपर्क के लिए HMATX.
खाल अबुदान'कोल' HMAX. NiT लाइब्रेरी प्रथम वर्ग अप्रयोगक प्रदान करता है. newt एकीकरण. के रूप में उपलब्ध है Htmx और Htmx.TagHelpers Nuo प्राप्त पैकेज, यह अपने देश में महसूस करता है. NuT के लिए लगता है और HyT के साथ काम करता है एक निरपेक्ष खुशी के साथ काम करता है. आप Huidioddid के महान खुले स्रोत के काम के बारे में अधिक मिल जाएगा उसकी पर GiHh.
dotnet add package Htmx
dotnet add package Htmx.TagHelpers
अपने में _ViewImports.cshtml:
@addTagHelper *, Htmx.TagHelpers
सबसे उपयोगी फीचर है Request.IsHtmx() विस्तार विधि, जो आपको बताता है कि क्या निवेदन HMMX से आया है. यह आपको या तो पूर्ण दृष्टिकोण वापस आने देता है या सिर्फ आंशिक:
[HttpGet]
public async Task<IActionResult> Index(int page = 1, int pageSize = 20)
{
var posts = await blogViewService.GetPagedPosts(page, pageSize);
if (Request.IsHtmx())
return PartialView("_BlogSummaryList", posts);
return View("Index", posts);
}
एक एकल नियंत्रण कार्य दोनों कार्य करता है:
कोई अलग एपीआई अंत बिन्दुओं, कोई दोहरे तर्क नहीं, कोई JSON श्रृंखला अप.
एक आम धारणा: बहुत से अतिरिक्त अतिरिक्त विकासकर्ता को लगता है कि आपको जरूरत है
_प्रीफिक्स (जैसे जैसा)_BlogSummaryList.cshtml) आंशिक अनुवाद प्राप्त करने के लिए आप नहीं!PartialView()"काइन" का मतलब है खाका को भूल जाओ, बस इस बिट का रेंडर करो. आप उपयोग कर सकते हैं.return PartialView("SearchResults", model)एक नियमित दृश्य फ़ाइल के साथ और यह पूरी तरह से काम करता है. केंद्रीय अधिवेशन ने अप्रचलित वेब पृष्ठ (बत्ती) जहां यह फ़ाइल को सीधे URL के द्वारा सेवा करने से रोका गया है, परंतु एमवीसी ने सीधे पहुँच से सभी दृश्यों को सुरक्षित रखा है. यह केवल एक अधिवेशन का नाम है जो मदद दृश्य को पहचानने में मदद करता है. वांछित आंशिक रूप से.
HMAX.NT टैग सहायक प्रदान करता है जो नियंत्रण को साफ करने के लिए काम करते हैं. चरण तार लिखने के बजाए, आप प्रबल रूप से उल्लेखों का उपयोग कर सकते हैं:
<button
hx-controller="Comment"
hx-action="GetCommentForm"
hx-post
hx-target="#commentform">
Reply
</button>
यह सही रास्ते बनाता है . NEENT CENT की दिशा प्रणाली. यदि आप अपने नियंत्रण या कार्य का नाम देते हैं, तो आपका आईडीई इसे पकड़ लेगा. जादू तार से अधिक बेहतर!
इस ब्लॉग की टिप्पणी तंत्र से एक वास्तविक उदाहरण है:
<button
class="btn btn-outline btn-sm mb-4"
hx-action="Comment"
hx-controller="Comment"
hx-post
hx-vals
x-on:click.prevent="window.mostlylucid.comments.setValues($event)"
hx-on="htmx:afterSwap: window.scrollTo({top: 0, behavior: 'smooth'})"
hx-swap="outerHTML"
hx-target="#commentform">
Comment
</button>
ध्यान दीजिए कि किस तरह हाइमक्स अमिट्स के साथ अच्छी तरह से खेलता है (जे.x-on:click.preventकभी-कभी ग्राहक-साथ एक-दूसरे परो के उन लोगों के लिए।
लाइब्रेरी भी प्रदान करती है:
Request.IsHtmxNonBoosted() - जाँच करें कि क्या यह एक HMAX निवेदन है लेकिन नहीं बढ़ाRequest.IsHtmxRefresh() - जाँच करें कि क्या यह एक इतिहास बहाल करने के लिए निवेदन हैयहाँ इस ब्लॉग से सर्च नियंत्रक है, जिससे तीन वापसी पैटर्न दिखा सकें:
[HttpGet]
[OutputCache(Duration = 3600, VaryByHeaderNames = new[] { "hx-request", "pagerequest" })]
public async Task<IActionResult> Search(
string? query,
int page = 1,
int pageSize = 10,
[FromHeader] bool pagerequest = false)
{
var searchModel = await BuildSearchModel(query, page, pageSize);
if (pagerequest && Request.IsHtmx())
return PartialView("_SearchResultsPartial", searchModel.SearchResults);
if (Request.IsHtmx())
return PartialView("SearchResults", searchModel);
return View("SearchResults", searchModel);
}
तीन दृश्यों के लिए तीन वापसी पथ:
आंशिक दृष्टिकोण (S)_SearchResultsPartial.cshtml( ख) ऊपर दिए गए टैग को कैसे प्रयोग किया जाना है?
@model Mostlylucid.Models.Blog.PostListViewModel
<div class="pt-2" id="content">
@if (Model.Data?.Any() is true)
{
<div class="inline-flex w-full items-center justify-center pb-4">
@if (Model.TotalItems > Model.PageSize)
{
<pager
x-ref="pager"
link-url="@Model.LinkUrl"
hx-boost="true"
hx-target="#content"
hx-swap="show:none"
page="@Model.Page"
page-size="@Model.PageSize"
total-items="@Model.TotalItems"
hx-headers='{"pagerequest": "true"}'>
</pager>
}
</div>
@foreach (var post in Model.Data)
{
<partial name="_ListPost" model="post"/>
}
}
</div>
पृष्ठ टैग मदद को नीचे तोड़ रहे:
hx-boost="true" - इंटरफेस लिंक, AJAX में परिवर्तितhx-target="#content" - प्रतिक्रिया में कहाँ जाएँhx-headers='{"pagerequest": "true"}' - मनपसंद शीर्षिका नियंत्रण बताता है यह plaging हैRequest.IsHtmx() && pagerequest सिर्फ न्यूनतम आंशिक वापस लौटने के लिएमैंने लिखा ज़्यादातर लोगों का कहना है कि अलग - अलग भाषाएँ बोलनेवाले भाई - बहनों का हौसला बढ़ाया जाता है । परिष्करण कोड से बचने के लिए. यह HMMXX-पहले है लेकिन जावास्क्रिप्ट के बिना भी काम करता है.
dotnet add package mostlylucid.pagingtaghelper
में जोड़ें _ViewImports.cshtml:
@addTagHelper *, mostlylucid.pagingtaghelper
लागू करें IPagingModel<T> और तुम कर रहे हो:
public class BasePagingModel<T> : IPagingModel<T> where T : class
{
public int Page { get; set; }
public int TotalItems { get; set; }
public int PageSize { get; set; }
public string LinkUrl { get; set; }
public List<T> Data { get; set; }
}
आप क्या मिलता है:
टैग मदद लिंक बनाता है जो क्वैरी वाक्यांशों को सुरक्षित रखते हैं, मनपसंद शीर्षिका का समर्थन करते हैं, तथा HMMMX के साथ विस्तृत समुद्री किनारा (ऊपर उदाहरण देखें).
यहाँ है कि कैसे पूरी प्रणाली एक साथ फिट होती है:
graph TB
A[Browser] -->|"Initial page load"| B[Controller Action]
B -->|"Request.IsHtmx() = false"| C[Return Full View]
C --> D[Render Layout + Partial]
A -->|"User clicks pagination/filter"| E[HTMX Request]
E -->|"hx-get with headers"| F[Same Controller Action]
F -->|"Request.IsHtmx() = true"| G{Check Headers}
G -->|"pagerequest header"| H[Return Minimal Partial]
G -->|"No special header"| I[Return Section Partial]
H --> J[Swap Content in Target]
I --> J
J -->|"User clicks another link"| E
style B stroke:#333,stroke-width:2px
style F stroke:#333,stroke-width:2px
style C stroke:#0066cc,stroke-width:2px
style H stroke:#00cc66,stroke-width:2px
style I stroke:#00cc66,stroke-width:2px
उपयोग में कोड 0 (डीएमडीजी 2024) तथा टेम्पलेट अंशों के साथ संस्करण 0 में उचित आंशिक अनुवाद. उस से पहले, जैंगो विकासकर्ता विशेष रूप से प्रयोग किया गया टैग या तीसरा पैकेज जैसे कि dungag-f-fagagh. kgm PartialView() क्योंकि संस्करण 1. 0 से लेकर सन् 1616 - अलग हस्तलिपियों में अलग - अलग समय पर रखा गया है, लेकिन वही गंतव्य: HMMX के लिए एचटीएमएल टुकड़े ।
राल पर रूबी ने टेबो फ्रेम (जो गरम पानी का भाग है), जैसा कि आत्मा में है:
<%= turbo_frame_tag "posts" do %>
<%= render @posts %>
<% end %>
यह फर्क है कि टेर्बो को निवेदन और प्रतिक्रिया दोनों पर विशिष्ट फ्रेम मार्कर्स की ज़रूरत होती है । hx-target.
एलीक्सर के फ़िक्सिंग लाइव वेब-कंड कनेक्शन तथा सर्वर साइड स्थिति के साथ एक अलग तरीका लेता है:
def handle_event("load_more", _params, socket) do
{:noreply, assign(socket, posts: load_more_posts())}
end
जीवित दर्शक वास्तविक समय अनुप्रयोगों के लिए शानदार है, लेकिन यह कनेक्शन के लिए वेबस्फीति और सर्वर मेमोरी की आवश्यकता होती है. HMMX पुराने HTTP - राज्यीय, कैशेबल का उपयोग करता है. एक ब्लॉग के लिए, यह बिल्कुल सही है.
आउटपुट कैशिंग: OutputCache गुण अलग करें hx-request शीर्ष- सूचना संपूर्ण पृष्ठ तथा आंशिक:
[OutputCache(Duration = 3600, VaryByHeaderNames = new[] { "hx-request", "pagerequest" })]
नेटवर्क EREND: सर्वर- नाप्ड एचटीएमएल अकसर JSON + क्लाएंट- साइड टैम्प्लेट से छोटा होता है, जो कि कम दौरों की आवश्यकता होती है, और कैश ठीक से.
बंडल आकार: HMMAX (14KB) + वैकल्पिक यूकेबी. jass (15केबी) + ping टैग सहायक (15केबी) = 30K से कम) कुल. तुलना करें कि (200KB+B)
आशावादी: - एकीकृत HMAX और तत्काल फ़ीडबैक के लिए एक पारा:
<div x-data="{ count: @Model.CommentCount }">
<button hx-post="/comment/like" x-on:click="count++" hx-on::after-request="count = $event.detail.xhr.response">
Likes: <span x-text="count"></span>
</button>
</div>
गिनती अद्यतन तत्काल (ऑप्टीवादी), फिर सर्वर प्रतिक्रिया के साथ सिंक करता है.
बाहर- ब्लॉक्स - एक प्रतिक्रिया से बहुत से पृष्ठ खण्डों को अद्यतन करें:
<div id="main-content"><!-- Main response --></div>
<div id="notification-count" hx-swap-oob="true"><span>5 new</span></div>
अधिसूचना के लिए सही, गाड़ी गिनती, आदि. मैं गहराई में इस पैटर्न को कवर करता हूँ HMMX के साथ स्केल तथा बिगड़ना दिखाएँ.
वेबएपी के साथ क्लाएंट- ओएस टैम्प्लेट्स@ info: whatsthis - कभी कभी आप मध्य- रास्ते का अनुभव चाहते हैं: सर्वर ने-कार्य किया एचटीएमएल सबसे ज्यादा चीजों के लिए, लेकिन JSON से विशेष गतिशील विषयवस्तु के लिए. HMMX'X क्लाएंट- बगल में एक्सटेंशन आप वास्तव में ऐसा करते हैं:
<script src="https://unpkg.com/[email protected]/client-side-templates.js"></script>
<script src="https://unpkg.com/mustache@latest"></script>
<div hx-ext="client-side-templates">
<template id="post-template" type="text/mustache">
{{#posts}}
<div class="post">
<h3>{{title}}</h3>
<p>{{excerpt}}</p>
</div>
{{/posts}}
</template>
<button hx-get="/api/posts"
hx-target="#post-list"
mustache-template="post-template">
Load Posts
</button>
<div id="post-list"></div>
</div>
यह तरीका आवश्यक रूप से काम करता है, कवरबार, या Najors टेम्पलेट के साथ काम करता है. आपका वेब बुराई प्रारूप JSON, लेकिन HMMAX ग्राहक के पक्ष में काम करता है. यह विशेष रूप से उपयोगी है जब आपके पास एक मौजूदा एपीआई या मोबाइल apps के साथ डेटा साझा करने की जरूरत होती है. HexMMMMMIMMIMMIMS ग्राहक के साथ अधिक जानकारी के लिए अधिक जानकारी के लिए, देखें, देखो, देखें. साथी लेख.
डिबगिंग औजार: संस्थापित करें एचएसएमएक्स डिबगर एक्सटेंशन - यह वास्तव में समय में प्रत्येक अनुरोध, प्रतिक्रिया दिखाता है.
UNECKERT CJAX के साथ विशेष नियंत्रण की आवश्यकता होती है. HMAX.ET कई शुद्ध विकल्प प्रदान करता है. सिफ़ारिशी तरीके से उपयोग किया जाता है. HtmxAntiforgeryScriptEndpoint:
// In Program.cs
app.MapHtmxAntiforgeryScript();
<!-- In your layout head -->
<script src="@HtmxAntiforgeryScriptEndpoints.Path" defer></script>
या टैग सहायक: <meta name="htmx-config" includeAspNetAntiforgeryToken="true" />. देखें HMMANX Antiki-केन पर हिडिडिडेंट के लेख पूरी जानकारी के लिए।
एक आर्दस्त का @click छोटा हैण्डों के साथ परस्पर विरोध @ सिंटेक्स. इसके बजाए सुस्पष्ट फ़ॉर्म इस्तेमाल करें:
<button x-on:click="doSomething()">Click me</button> <!-- Instead of @click -->
<div x-bind:class="isOpen ? 'block' : 'hidden'"></div> <!-- Instead of :class -->
या उससे बच गए? @@click, लेकिन सुस्पष्ट वाक्य स्पष्ट है.
इतिहास प्रविष्टि को नियंत्रित किया जा रहा है: डिफ़ॉल्ट रूप में, HMMAX इतिहास के लिए प्रत्येक अनुरोध को दबाव देता है. prounding/fings के लिए जहाँ आप इतिहास प्रदूषण नहीं चाहते हैं:
<paging model="@Model" hx-push-url="false"> <!-- Don't add history entries -->
या प्रयोग hx-replace-url="true" यूआरएल को जोड़ने के बिना प्रविष्टियों को अद्यतन करने के लिए अद्यतन करें.
अपॉयर आंशिक समस्या: ब्राउज़र पीछे/forward केवल कोई खाका के साथ आंशिक टुकड़ा दिखाता है. hx-history-elt और तुम अपनी सामग्री में से कुछ ऐसे भी हो जो आपस में मिले:
<div class="container mx-auto" id="contentcontainer" hx-history-elt>
@RenderBody()
</div>
यह HMMX बताता है कि कौन सा तत्व स्नैपशॉट के लिए है, जब इतिहास बहाल किया जाता है तो उसके चारों ओर के खाका को सुरक्षित रखता है.
लक्षणः HMX स्थानीय कार्य करता है परंतु सीडीएन - गलत सामग्री के पीछे ब्रेक हो जाता है.
मूल कारण: सीडीएनएसआई को अनदेखा करता है HX-Request शीर्षिका. आपका सर्वर इस शीर्षक पर भिन्न सामग्री बताता है, लेकिन CDN कैश उन्हें एक जैसी ही रूप में बताता है.
एनईएस.ईईसी कोर ठीक: प्रयोक्ता VaryByHeaderNames:
[OutputCache(Duration = 3600, VaryByHeaderNames = new[] { "hx-request" })]
सीडीएन ठीक करना: कैश नियम को शामिल करने के लिए कॉन्फ़िगर करें HX-Request कैश कुंजी में. बादल जमने के लिए: कैशिंग कैशिंग नियमों को अनदेखा करते हुए कैश खाली करने के लिए (c) HX-Request.
hx-boost सामान्य लिंक AJAX निवेदन में बदलता है. एचएसएमएक्स क्लर्क पृष्ठ कुछ कोर टीम के सदस्य इसे दूर करने की सलाह देते हैं (सोर्ड्स) <head> संतुष्ट, आचरण के क्षेत्र पर प्रभाव डालता है, जबकि दूसरे इसे जल्दी जीतने के लिए ठीक पाते हैं ।
<div hx-boost="true" hx-target="#contentcontainer">
<a asp-action="Show" asp-route-slug="@post.Slug">Read More</a>
</div>
इस ब्लॉग में बड़े पैमाने पर इसका उपयोग किया जाता है । hx-get स्पष्ट है, लेकिन hx-boost यदि आप संगत हैं तो काम करें. चयनात्मक रूप से अक्षम करें hx-boost="false" तत्वों के नाम
प्रमाणीकरण विधि के साथ HMAX. NENT का प्रतिनिधित्व करता है एक वापसी का प्रतिनिधित्व करता है बिना आधुनिक यूएक्स का बलिदान के बिना सर्वर के लिए. आप पाते हैं:
सर्वर-कार्यात्मक दृष्टिकोण से समय की परीक्षा ली गई है, और HMAX के साथ, यह अंततः सुंदर ग्राहक-साथ काम करने के योग्य है. आप मजबूत वेब अनुप्रयोगों को निर्माण कर सकते हैं कि दशकों के लिए काम किया है - वे सिर्फ सही उपकरण उन्हें फिर से चमक बनाने के लिए इंतजार कर रहे हैं.
यह लेख एक दो भाग श्रृंखला का हिस्सा है जो कि अप्रिक के साथ एचमएक्स पर दिया गया है. NENT कोर:
रिमोट दस्तावेज़ीकरण:
लाइब्रेरीज़ औज़ार: (T)
संसाधन:
© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.