0👍
Check my answer on a older question.
I think this is one of the elegant way to handle the i18n. You should made a map of dictionary (as I did, where you can define all the languages), then you should handle just that one map at the app.js
where the vue is defined.
I hope it can help you. If you have any question just write a comment 😉
Source:stackexchange.com