Modern tarayıcılar için küçük bir jQuery alternatifi: Cash
(github.com/fabiospampinato)CashCash tanıtımı
- CashCash, modern tarayıcılar (IE11+) için çok küçük bir jQuery alternatifidir ve DOM manipülasyonu için jQuery tarzı bir sözdizimi sunar.
- Kod tabanını minimumda tutmak için modern tarayıcı özelliklerinden yararlanır ve jQuery benzeri zincirlenebilir metotları çok daha küçük bir dosya boyutuyla sunar.
- jQuery ile %100 özellik eşleşmesini hedeflemez, ancak günlük kullanım senaryolarının çoğunu kapsar.
Karşılaştırma
-
Boyut karşılaştırması
- Unminified: Cash 36.5 KB, Zepto 58.7 KB, jQuery Slim 227 KB
- Minified: Cash 16 KB, Zepto 26 KB, jQuery Slim 71 KB
- Minified & Gzipped: Cash 6 KB, Zepto 9.8 KB, jQuery Slim 24.4 KB
- jQuery Slim'e kıyasla %76.6 daha küçük boyut sağlar.
-
Özellik karşılaştırması
- Eski tarayıcı desteği: Cash ❌, Zepto ❌, jQuery Slim ✔
- Modern tarayıcı desteği: Cash ✔, Zepto ✔, jQuery Slim ✔
- Aktif bakım: Cash ✔, Zepto ❌, jQuery Slim ✔
- Namespace event'ler: Cash ✔, Zepto ❌, jQuery Slim ✔
- TypeScript kod tabanı: Cash ✔, Zepto ❌, jQuery Slim ❌
- TypeScript tipleri: Cash ✔, Zepto ⚠️, jQuery Slim ⚠️
- Kısmi build desteği: Cash ✔, Zepto ⚠️, jQuery Slim ⚠️
Kullanım
- Cash, jsDelivr üzerinden kullanılabilir ve şu şekilde kullanılabilir:
<script src="https://cdn.jsdelivr.net/npm/cash-dom/…; <script> $(function () { $('html').addClass('dom-loaded'); $('<footer>Appended with Cash</footer>').appendTo(document.body); }); </script> - npm üzerinden de
cash-dompaketi olarak kullanılabilir:import $ from "cash-dom"; $(function () { $('html').addClass('dom-loaded'); $('<footer>Appended with Cash</footer>').appendTo(document.body); });
Dokümantasyon
- Cash, sorgu seçicileri, koleksiyon metotları ve bazı kütüphane metotları sunar.
- jQuery'nin API'sine başvurabilirsiniz; Cash, jQuery ile uyumlu özelliklerin çoğunu uygular.
- Cash, özel metotlarla genişletilebilir.
Katkı
- Bir sorun bulursanız veya özellik talebiniz varsa issue açmalısınız.
- Pull request göndermek için şu adımları izleyin:
- Depoyu klonlayın:
git clone https://github.com/fabiospampinato/cash.git - Klonladığınız depoya gidin:
cd cash - Bağımlılıkları yükleyin:
npm install - Değişikliklerde Cash'in otomatik olarak yeniden derlenmesi için:
npm run dev - Test paketini açın:
npm run test - Gerekirse README'yi güncelleyin
- Depoyu klonlayın:
Teşekkürler
- Cash geliştirilmesine katkıda bulunan tüm katkıcılar teşekkür eder.
- Logo tasarımını yapan @hisk'e teşekkürler.
Lisans
- MIT © Fabio Spampinato
1 yorum
Hacker News görüşleri
Tarayıcı, DOM manipülasyonunu basitleştirdiği için işi yalnızca iki satır kodla yapmak mümkün
document.querySelectorvedocument.querySelectorAllbağlanarak kullanılıyorjQuery’nin avantajı otomatik liste işleme ve üst ebeveyn sorgulama özelliği
Ana akım web siteleri çok fazla JavaScript kullandığı için, tüm kütüphaneyi baştan yazmak verimli değil
jQuery alternatifi olarak kişisel olarak yapılmış bir kütüphane tanıtılıyor
jQuery ile Cash arasındaki farklar öğreniliyor
Shoestring kullanarak JS boyutunu azaltma deneyimi paylaşılmış
TypeScript template string’leri kullanarak öğe tipini çıkarma hedefi var
$('div#name')ifadesi HTMLDivElement olarak çıkarılıyorjQuery 4, modern tarayıcılar için bir alternatif
Tarayıcı eklentilerinde jQuery kullanılmış ancak sonrasında bir JSX kütüphanesine geçilmiş
Küçük kütüphaneler ve framework’ler seviliyor ama pratikte büyük kütüphaneler kullanılıyor