Как правильно построить SPA на Laravel + vue.js?
api на laravel, ui на vuejs, общение json'ном туда-сюда, считайте 2 разных приложения
Blade шаблоны обрабатываются исключительно сервером, vue файлы же собираются системой сборки и попадают в js/css/..., которые подключаются на уже загруженной браузером странице.
Если у вас SPA, то blade шаблонов вообще может не быть (или просто будет один, но без содержимого, так как всё содержимое будет создано на клиенте с помощью vue).
Как следствие, мультиязычность может быть реализована или силами клиентского JavaScript кода, или подгрузкой данных через API с указанием нужного языка. Варианты, само собой, не взаимоисключающие :)
Соответственно, при вызове функций API нужно будет так же передавать каким-либо образом желаемый язык. Например, в куках, сессии или вообще в дополнительном параметре запроса.