Rumah >hujung hadapan web >tutorial js >Saya Menjadikan Tapak Web Saya Lebih Pantas Dengan Helah Sihir Frontend Ini
Hai, rakan pembangun! ?
Pernahkah pengguna mengadu tentang laman web anda lambat? Atau mungkin anda pernah menonton dengan seram apabila skor prestasi Rumah Api anda menurun secara beransur-ansur dengan setiap ciri baharu? Percayalah, saya pernah ke sana. Hari ini, mari kita mendalami teknik pengoptimuman bahagian hadapan yang akan menjadikan tapak web anda sepantas kilat.
Mari menjadi nyata seketika. Menurut Google, 53% pengguna mudah alih meninggalkan tapak yang mengambil masa lebih lama daripada 3 saat untuk dimuatkan. Itu besar! Selain itu, sejak 2021, Google telah menggunakan Core Web Vitals sebagai faktor kedudukan. Jadi, jika anda mahu tapak anda mendapat kedudukan yang baik dan memastikan pengguna gembira, prestasi bukanlah pilihan – ini penting.
Imej selalunya merupakan aset paling berat pada halaman web. Begini cara mengendalikannya seperti seorang profesional:
<picture> <source srcset="image.webp" type="image/webp"> <source srcset="image.jpg" type="image/jpeg"> <img src="image.jpg" alt="A fallback image"> </picture>
Sentiasa mampatkan imej anda! Alat seperti Sharp, ImageOptim atau Squoosh boleh membantu anda mencapai ini tanpa kehilangan kualiti yang ketara.
<img src="image.jpg" loading="lazy" alt="Lazy loaded image">
JavaScript boleh membuat atau memecahkan prestasi tapak anda. Berikut ialah beberapa strategi yang diuji pertempuran:
Daripada menghantar satu berkas besar, bahagikan kod anda kepada bahagian yang lebih kecil:
// Before import { heavyFeature } from './heavyFeature'; // After const heavyFeature = () => import('./heavyFeature');
Tambahkan ini pada konfigurasi webpack anda:
module.exports = { performance: { maxAssetSize: 244000, // bytes maxEntrypointSize: 244000, hints: 'error' } };
CSS kritikal sebaris dan tangguhkan gaya bukan kritikal:
<head> <!-- Critical CSS inline --> <style> /* Your critical styles here */ </style> <!-- Non-critical CSS deferred --> <link rel="preload" href="styles.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> </head>
Gunakan PurgeCSS untuk mengalih keluar gaya yang tidak digunakan:
// postcss.config.js module.exports = { plugins: [ require('@fullhuman/postcss-purgecss')({ content: ['./src/**/*.html', './src/**/*.js'] }) ] };
<link rel="preconnect" href="https://api.example.com"> <link rel="preload" href="critical-font.woff2" as="font" crossorigin>
const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { // Load your content loadContent(); } }); }); observer.observe(document.querySelector('.lazy-section'));
Jangan hanya mengoptimumkan dan melupakan! Sediakan pemantauan:
<picture> <source srcset="image.webp" type="image/webp"> <source srcset="image.jpg" type="image/jpeg"> <img src="image.jpg" alt="A fallback image"> </picture>
Ingat, pengoptimuman prestasi bukanlah tugas sekali sahaja – ia adalah proses yang berterusan. Mulakan dengan buah gantung rendah seperti pengoptimuman imej dan teknik pemuatan yang betul, kemudian beralih kepada pengoptimuman yang lebih kompleks mengikut keperluan.
Apakah teknik pengoptimuman prestasi yang paling berkesan untuk anda? Kongsi pengalaman anda dalam komen di bawah!
Selamat pengekodan! ?
Atas ialah kandungan terperinci Saya Menjadikan Tapak Web Saya Lebih Pantas Dengan Helah Sihir Frontend Ini. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!