Next.js: Bisakah kita menerapkan prefetching tidak menggunakan Service Worker?

Dibuat pada 26 Des 2016  ·  3Komentar  ·  Sumber: vercel/next.js

Pertama-tama, terima kasih telah membuat alat yang luar biasa! Next.js tampak seperti "kerangka impian" bagi saya untuk membangun aplikasi web, yang "memberikan yang terbaik dari kedua dunia" (aplikasi halaman tunggal dan rendering sisi server).

Bagi saya bagian terpenting yang membantu Next.js memenuhi janjinya adalah kemampuan untuk mengambil semua komponen yang tag menunjuk ke dalam sebuah halaman.

Menurut dokumentasi, fitur ini diimplementasikan menggunakan Service Worker, API yang hanya mendukung Chrome dan Firefox. Ini berarti sebagian besar pengguna web tidak dapat memanfaatkan fitur hebat ini. Saya tidak tahu apakah saya melewatkan sesuatu.

Bisakah kita menerapkan prefetching menggunakan jenis teknik lain, yang mendukung semua browser modern, daripada menggunakan Service Worker?

Komentar yang paling membantu

Prinsip yang telah membantu kami selama bertahun-tahun adalah menyediakan _dukungan_ untuk semua browser, tetapi _optimisasi_ untuk browser modern.

Prefetching adalah pengoptimalan. Untuk menginvestasikan lebih banyak dan lebih banyak kode ke dalam pengoptimalan yang akan ditinggalkan (karena semua agen pengguna modern mendukung ServiceWorker atau berencana untuk melakukannya) sepertinya bukan area fokus yang baik.

Jika Anda mau, jangan ragu untuk membuat modul prefetching userland Anda sendiri yang mengekspos API yang sama dengan next/prefetch . Hal yang rapi adalah: jika Anda tidak menggunakan next/prefetch , itu tidak akan berhasil masuk ke dalam build. Tidak kembung :)

Semua 3 komentar

Ini berarti sebagian besar pengguna web tidak dapat memanfaatkan fitur hebat ini

Ini adalah jenis yang tidak benar. Lihat: http://caniuse.com/#feat =serviceworkers
Browser menuju ke arah ini dan akan segera menyusul.

Bagaimanapun, fokus kami saat ini adalah pengiriman 2.0 dan solusi prefetching saat ini cukup rapi untuk itu.
Jika seseorang dapat mengerjakan saran ini, saya pikir kita tidak punya alasan untuk mengatakan tidak.
(Dan sangat mungkin untuk melakukannya di userland juga)

Saya mencatat di sini beberapa ide untuk memperluas dukungan, yaitu menggunakan AppCache: https://github.com/zeit/next.js/issues/24#issuecomment -258804529

Prinsip yang telah membantu kami selama bertahun-tahun adalah menyediakan _dukungan_ untuk semua browser, tetapi _optimisasi_ untuk browser modern.

Prefetching adalah pengoptimalan. Untuk menginvestasikan lebih banyak dan lebih banyak kode ke dalam pengoptimalan yang akan ditinggalkan (karena semua agen pengguna modern mendukung ServiceWorker atau berencana untuk melakukannya) sepertinya bukan area fokus yang baik.

Jika Anda mau, jangan ragu untuk membuat modul prefetching userland Anda sendiri yang mengekspos API yang sama dengan next/prefetch . Hal yang rapi adalah: jika Anda tidak menggunakan next/prefetch , itu tidak akan berhasil masuk ke dalam build. Tidak kembung :)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat