Используй route.query
Нюкст генерирует заранее маршруты в виде компонент. Параметры же (твои маршруты) придется задавать вручную. Бесконечно не задашь. А вот query в качестве параметров запросто можно увеличивать сколько душе угодно.
И да, Добро пожаловать.
Никак неправильно. Если ты про рендер, то работаешь через сокеты и рендеришь нужный контент. Если ты про спа только на клиенте, то через апи проверяешь есть ли доступ к нужным данным. А если ещё и хочешь 2 отдельных спа для авторизованных и нет - тебе нужно для разных роутов свой статик отдавать на сервере
nuxtServerInit
routerMiddleware
Вроде даже и примеры на сайте есть...
Но держать нюкст ради рендера вью - имхо неадекватно.
Лучше страничку с json данными внутри скрипта отдать пользователю, а пользователь уже подгрузит и vue и все остальное.
Например: ставишь через vuecli webpack шаблон, делаешь сайт, делаешь build. Далее dist кидаешь в проект с пхп. Внутри index.html рендерите раздел script и в переменную гоните полученные с бд данные. Это хоть и менее деликатный способ, но куда более приятный в плане экономии ресурсов за счёт избавления от рендера nuxt и лишних запросов с того же nuxt к бд.
Сейчас ресайзил свой хром на сайте. Жутко тормозил. Зашел в этот тред. Спустя час увидел лишний горизонтальный скролл, добавил media (max-width на 50 пикселей больше, чтобы скролл не успевал появляться, так тормоза исчезли. Если интересно )