Quick hack for using google translate (or other services) in Nuxt/Vue.js

26 May 18 20:00
One minute read

Hey guys, here’s a quick way of making google translate play nice using setInterval.

export default {
    mounted: function()
        this.$nextTick(() => {


    methods: {

        googleTranslateInit: function() {

            let checkIfGoogleLoaded = setInterval(() => {

                if (google.translate.TranslateElement != null) {


            }, 100);


        googleTranslateElement: function(id) {
            new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, id);


It’s not always easy to have a nice callback available for google translate, especially if you’re nested into a component. I’m only using NUXT’s external resources setup for directly loading the library, and ignored creating a plugin for this (although I think that’s still valid, to create a script and use an onLoad function

« Back to posts