Next.js: Podemos implementar a pré-busca sem usar o Service Worker?

Criado em 26 dez. 2016  ·  3Comentários  ·  Fonte: vercel/next.js

Em primeiro lugar, obrigado por criar uma ferramenta tão incrível! Next.js me parece uma "estrutura dos sonhos" para a construção de aplicativos da web, que "nos traz o melhor dos dois mundos" (aplicativo de página única e renderização do lado do servidor).

Para mim, a peça mais importante que ajuda Next.js a cumprir sua promessa é a capacidade de pré-buscar todos os componentes que o tags apontam para em uma página.

De acordo com a documentação, esse recurso é implementado usando o Service Worker, uma API que oferece suporte apenas para Chrome e Firefox. Isso significa que uma grande parte dos usuários da web simplesmente não consegue tirar proveito desse ótimo recurso. Não sei se perdi alguma coisa.

Podemos implementar a pré-busca usando outros tipos de técnicas, que oferecem suporte a todos os navegadores modernos, em vez de usar o Service Worker?

Comentários muito úteis

Um princípio que nos serviu bem ao longo dos anos é fornecer _suporte_ para todos os navegadores, mas _otimizações_ para os modernos.

A pré-busca é uma otimização. Investir mais e mais código em uma otimização que será descontinuada (já que todos os agentes de usuário modernos oferecem suporte a ServiceWorker ou planejam fazê-lo) não parece uma boa área de foco.

Se desejar, sinta-se à vontade para criar seu próprio módulo de pré-busca de userland que expõe a mesma API de next/prefetch . O legal é: se você não usar next/prefetch , ele não entrará na construção. Sem inchaço :)

Todos 3 comentários

Isso significa que uma grande parte dos usuários da web simplesmente não consegue tirar proveito desse ótimo recurso

Isso é meio falso. Consulte: http://caniuse.com/#feat = serviceworkers
Os navegadores estão indo nessa direção e serão atualizados em breve.

De qualquer forma, nosso foco atual é enviar 2.0 e a solução de pré-busca atual é bem legal para isso.
Se alguém pudesse trabalhar nessa sugestão, acho que não temos razão para dizer não.
(E é totalmente possível fazer isso no userland também)

Anotei aqui algumas idéias para ampliar o suporte, nomeadamente usando AppCache: https://github.com/zeit/next.js/issues/24#issuecomment -258804529

Um princípio que nos serviu bem ao longo dos anos é fornecer _suporte_ para todos os navegadores, mas _otimizações_ para os modernos.

A pré-busca é uma otimização. Investir mais e mais código em uma otimização que será descontinuada (já que todos os agentes de usuário modernos oferecem suporte a ServiceWorker ou planejam fazê-lo) não parece uma boa área de foco.

Se desejar, sinta-se à vontade para criar seu próprio módulo de pré-busca de userland que expõe a mesma API de next/prefetch . O legal é: se você não usar next/prefetch , ele não entrará na construção. Sem inchaço :)

Esta página foi útil?
0 / 5 - 0 avaliações