0👍
function googleTranslateElementInit
is for google translate widget to use so you must make it scope accessable. Which means you should have something like below:
mounted () {
window.googleTranslateElementInit = function () {
new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
}
},
Here is the sample snippet, it shows some cross origin error. But it does work on my local
new Vue({
el: '#example',
mounted () {
window.googleTranslateElementInit = function () {
new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
}
}
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
<title>Example</title>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
</head>
<body>
<div id="example">
<div id="google_translate_element"></div>
</div>
</body>
</html>
- [Vuejs]-Switch VueJS Devtools back on in development
- [Vuejs]-Why can't I pass my user_name value into my component? (Auth)
Source:stackexchange.com