Можно ли использовать Vue без потери SEO? Допустим для отдельных частей страницы, к примеру вывод карточек товара с помощью v-for или слайдер с помощью тега transition, отображение каких то модальных окон через v-if, насколько это сильно ударит по SEO и ударит ли вообще? И насколько хорошей\плохой практикой будет использовать Vue в качестве вспомогательного средства, а не для создания полноценного SPA?
UPD
Я знаю что есть такая вещь как SSR и Nuxt, но это не то что я хотел бы узнать. SSR весьма сложный и дорогой процесс и не всегда возможен в принципе, как, скорее всего, в моем случае. Вопрос в том, какой +-%SEO я потеряю , если буду использовать Vue для таких вещей, которые удобно делать нем, к примеру в частности, что планирую сделать я:
Слайдер, фильтр товаров, всплывающие подсказки при наведении на товар, табы, конструктор товара и прочее, где есть динамика. Насколько сильно +- ударит по SEO, к примеру, если я сделаю ту или иную фитчу с помощью Vue, нежели на JS\JQ.
Ударит. Все что вы таким образом будете делать с помощью Vue, будет невидимым для поисковиков. UPD. Вы не сможете использовать ssr, nuxt и тп, как советуют, если хотите использовать Vue для отдельных частей страницы.
И насколько хорошей\плохой практикой будет использовать Vue в качестве вспомогательного средства, а не для создания полноценного SPA?
Очень хорошая практика. Например, если у вас существующий интернет магазин с десятками фильтров, котрые между собой связаны. Реализация таких фильтров на jQuery или чистом JS - это ад. Тут можно и нужно брать Vue и переписывать только кусок с фильтрами, потому что используя реактивность, разрабатывать такие сложные взаимозависимые вещи, как фильтры, одно удовольствие.
На чем основывается утверждение? Есть тест https://vc.ru/seo/69857-seo-test-indeksaciya-javas... и google и yandex по результатам тестов умеют индексировать javascript сайты. Google еще вроде в 2014 официально объявил, что они умеют индексировать javascript сайты. Яндекс вроде до сих пор этого не сделал, но по факту тестов видно, что тоже умеет.
До меня всё написали верно. Но не всегда стоит усложнять приложение ssr или nuxt.
Есть замечательный плагин https://github.com/chrisvfritz/prerender-spa-plugin
С его помощью можно сделать статичными те страницы которые должны индексироваться.
Обновил вопрос. Вбухивать SSR в проект, где Vue планируется для динамических элементов, которые составят 5-10% всего объема сайта? Я думаю это того не стоит...
Владислав Лысков, Так вопрос про это и есть! Я дописал, сколько %+-SEO могут улетать от таких элементов? Я же не совсем дурак что бы весь контент или заголовки там, оборачивать во Vue компоненты, я же не хочу SEO потерять...
nuxt.js
Пререндерит страницу на сервере, в результате поисковик получит страницу сразу со всеми данными.
Дальше уже работает в "реактивном" режиме (что актуально для обычных пользователей).
Обновил вопрос. Вбухивать SSR в проект, где Vue планируется для динамических элементов, которые составят 5-10% всего объема сайта? Я думаю это того не стоит...