
htmx 4.0.0 გამოვიდა — რვა თვის მუშაობის შედეგი
htmx-ის გუნდმა გამოაქვეყნა 4.0.0 ვერსია: შიდა მექანიზმი XMLHttpRequest-იდან fetch()-ზე გადავიდა, ატრიბუტების მემკვიდრეობა ბაზისურად იმპლიციტური აღარ არის, მოვლენები სტანდარტიზდა და დაემატა morph-გადართვები.
28 აგვისტოს htmx-ის გუნდმა გამოაქვეყნა ვერსია 4.0.0 — რვა თვის მუშაობის შედეგი, ნათქვამია განცხადებაში. htmx არის ბიბლიოთეკა, რომელიც დეველოპერებს HTML-ატრიბუტების გაფართოებით ინტერაქტიული ინტერფეისების აწყობის საშუალებას აძლევს, დიდი რაოდენობის JavaScript-ის დაწერის გარეშე. 4.0 ამ ხაზის პირველი მთავარი გამოშვებაა.
როგორ დაიწყო გადაწერა
ავტორის თქმით, htmx 4-ის იდეა იმ დროს გაჩნდა, როცა ცალკე ბიბლიოთეკას, fixi-ს, ქმნიდა და JavaScript-ის fetch() API-სა და ასინქრონულ პროგრამირებას უფრო ახლოს გაეცნო. htmx უკან თავსებადობის გამო ყოველთვის XMLHttpRequest-ს იყენებდა. მოგვიანებით კონტრიბუტორმა კრისტიანმა streaming HTML-ის იდეებით დაუკავშირდა და დაარწმუნა, რომ შიდა მექანიზმის fetch()-ზე გადატანა ბიბლიოთეკას გაამარტივებდა; საქმეს მაიკლი და ალექსი შეუერთდნენ, და მუშაობა fixi-ს პორტითა და htmx-ის ტესტების კომპლექტით დაიწყო.
სამი მთავარი ცვლილება
მომხმარებლის თვალსაზრისით htmx 4 htmx 2-ს ძალიან ჰგავს, მაგრამ სამი რამ იცვლება. პირველი — ატრიბუტების მემკვიდრეობა ახლა ნაგულისხმევად იმპლიციტური აღარ არის: მშობელი ელემენტიდან შვილებზე ატრიბუტის გადასაცემად საჭიროა :inherited სუფიქსი, ხოლო საჭირო ადგილების მოსაძებნად გუნდმა ბრძანების ხაზის ინსტრუმენტი გამოუშვა — npx [email protected] upgrade-check.
მეორე — მოვლენების სახელები სტანდარტიზდა სქემით htmx:phase:action: htmx:beforeRequest ხდება htmx:before:request. შეცდომების უმეტესი მოვლენა გაერთიანდა htmx:error-ში, HTTP-შეცდომებისთვის ცალკე htmx:response:error ფუნქციონირებს.
მესამე — ისტორიის მხარდაჭერა აღარ ინახავს გვერდებს localStorage-ში. უკან დაბრუნებისას htmx გვერდს ხელახლა იღებს და ჩასვამს body-ში ან [hx-history-elt] ელემენტში. ეს ცვლილება პასუხობს ხანგრძლივ პრობლემას, როცა მესამე მხარის სკრიპტების მიერ შეტანილი DOM-ცვლილებები აღდგებოდა მათი JavaScript-ის გარეშე. ვისაც ლოკალური ქეშირება სურს, hx-history-cache გაფართოება sessionStorage-ზე მუშაობს.
ახალი ფუნქციები და გაფართოებები
მეოთხე ვერსიაში ჩაშენებულია morph-გადართვები idiomorph-ის ალგორითმის ბაზაზე და ახალი
ხელმისაწვდომობა და მხარდაჭერა
htmx 4.0.0 შეიძლება პაკეტის მენეჯერით დაინსტალირდეს ან CDN-იდან ჩაიტვირთოს. გუნდმა 4.0 განზრახ არ მონიშნა npm-ზე „latest“ ტეგით, რომ ვერსიის გარეშე CDN-ბმულების მომხმარებლები იძულებით არ განაახლოს: 2.x რჩება latest-ად, 4.0 კი next ტეგზე დარჩება 2027 წლის დასაწყისამდე. htmx 2-ის მხარდაჭერა განუსაზღვრელი ვადით გრძელდება, გუნდმა კი გამოაქვეყნა skill-ფაილებიც AI კოდის ასისტენტებისთვის — htmx 4-ით მუშაობის, გამართვის, გაფართოებების ავტორობისა და 2.x-დან მიგრაციისთვის.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.