Next.js: Можем ли мы реализовать предварительную выборку без использования Service Worker?

Созданный на 26 дек. 2016  ·  3Комментарии  ·  Источник: vercel/next.js

Прежде всего, спасибо за создание такого замечательного инструмента! Next.js кажется мне «фреймворком мечты» для создания веб-приложений, который «приносит нам лучшее из обоих миров» (одностраничное приложение и рендеринг на стороне сервера).

Для меня наиболее важной частью, которая помогает Next.js выполнить свои обещания, является возможность предварительной выборки всех компонентов, которые теги указывают на на странице.

Согласно документации, эта функция реализована с помощью Service Worker, API, который поддерживает только Chrome и Firefox. Это означает, что большая часть веб-пользователей просто не может воспользоваться этой замечательной функцией. Не знаю, упустил ли я что-нибудь.

Можем ли мы реализовать предварительную выборку с использованием других методов, которые поддерживают все современные браузеры, вместо использования Service Worker?

Самый полезный комментарий

Принцип, который хорошо служил нам на протяжении многих лет, заключается в обеспечении _поддержки_ для всех браузеров, но _оптимизации_ для современных.

Предварительная загрузка - это оптимизация. Вкладывать все больше и больше кода в оптимизацию, которая будет считаться устаревшей (поскольку все современные пользовательские агенты поддерживают ServiceWorker или планируют это сделать), не кажется хорошей областью внимания.

Если хотите, можете создать свой собственный модуль предварительной выборки пользовательского пространства, который предоставляет тот же API, что и next/prefetch . Интересная вещь: если вы не используете next/prefetch , он не попадет в сборку. Без раздувания :)

Все 3 Комментарий

Это означает, что значительная часть веб-пользователей просто не может воспользоваться этой замечательной функцией.

Это своего рода неправда. См .: http://caniuse.com/#feat = serviceworkers
Браузеры идут в этом направлении и скоро их догонят.

Как бы то ни было, в настоящее время мы сосредоточены на выпуске 2.0, и текущее решение для предварительной выборки довольно удобно для этого.
Если бы кто-то мог работать над этим предложением, я думаю, у нас нет причин отказывать.
(И это вполне возможно сделать и в пользовательском пространстве)

Я отметил здесь некоторые идеи по расширению поддержки, а именно использование AppCache: https://github.com/zeit/next.js/issues/24#issuecomment -258804529

Принцип, который хорошо служил нам на протяжении многих лет, заключается в обеспечении _поддержки_ для всех браузеров, но _оптимизации_ для современных.

Предварительная загрузка - это оптимизация. Вкладывать все больше и больше кода в оптимизацию, которая будет считаться устаревшей (поскольку все современные пользовательские агенты поддерживают ServiceWorker или планируют это сделать), не кажется хорошей областью внимания.

Если хотите, можете создать свой собственный модуль предварительной выборки пользовательского пространства, который предоставляет тот же API, что и next/prefetch . Интересная вещь: если вы не используете next/prefetch , он не попадет в сборку. Без раздувания :)

Была ли эта страница полезной?
0 / 5 - 0 рейтинги