谷歌地图无法正确加载 vue js

拉胡尔·雷古纳特

除非我按 ctrl+f5,否则 Google 地图不会加载属性。我在 vue js 挂载钩子内初始化地图。显示的错误是

挂载钩子错误:“ReferenceError: google is not defined”

当我按 ctrl+f5 时一切正常

<div id="map"></div>

<script src="https://maps.googleapis.com/maps/api/js?key=****"
            async defer></script>
new Vue({
    el:'#app',
    mounted() {
         map = new google.maps.Map(document.getElementById('map'), {
             center: {lat: -34.397, lng: 150.644},
             zoom: 8
         });
    }
});
网络AP

我建议为 Vue 使用现有的谷歌地图库,但如果你坚持按原样异步加载谷歌地图:

new Vue({
    el:'#app',
    created() {
         let script = document.createElement('script');
         script.src = 'https://maps.googleapis.com/maps/api/js?key=****';
         document.body.appendChild(script);
         script.load = function(){  
             map = new google.maps.Map(document.getElementById('map'), {
                 center: {lat: -34.397, lng: 150.644},
                 zoom: 8
             });
         };
    }
});

基本上,您必须侦听加载事件才能开始使用 API。

但我觉得在您的情况下,最佳实践是在您的 Vue.js 应用程序加载之前同步加载它,因为它可能完全依赖于 Google Maps API:

<html>
<body>
...
    <script src="https://maps.googleapis.com/maps/api/js?key=****"></script>
    <script src="path-to-your-app's-js"></script>
</body>
</html>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Vue js Highmaps - 如何加载地图?

来自分类Dev

Vue.js-vue-cli-service服务-img src无法从对象正确加载

来自分类Dev

Vue.js 破坏了谷歌地图功能

来自分类Dev

日期未正确加载vue.js

来自分类Dev

用Angular JS加载谷歌地图的问题

来自分类Dev

Vue.js无法加载SVG图像?

来自分类Dev

vue js 无法正确显示 props 组件

来自分类Dev

无法从js访问Vue

来自分类Dev

谷歌地图显示无法正确加载html中的地图

来自分类Dev

在Vue组件之前加载js

来自分类Dev

在Vue组件之前加载js

来自分类Dev

如何在vue js中使用谷歌地图的信息窗口内的@click触发功能?

来自分类Dev

Vue JS无法显示数据

来自分类Dev

谷歌地图无法正确加载轻框弹出

来自分类Dev

js文件无法正确加载

来自分类Dev

js文件无法正确加载

来自分类Dev

无法使用 PreloadJS 和 Vue.js 多次加载资产

来自分类Dev

Vue.js 有时无法加载组件

来自分类Dev

Vue.js中的组件通信无法正确呈现

来自分类Dev

Vue JS无法正确显示数据表(v-for)

来自分类Dev

中心谷歌地图vue组件

来自分类Dev

Vue Infinite无法正确加载数据

来自分类Dev

Vue.js生命周期问题,仅在Webpack加载器刷新页面上的元素后填充数据数组?谷歌地图标记没有显示?

来自分类Dev

角js:无法在谷歌地图中添加标记

来自分类Dev

具有vue-router的Vue JS无法加载已验证的组件

来自分类Dev

在 Vue js 中通过 axios 调用谷歌地图高程 api 时如何修复跨源读取阻塞?

来自分类Dev

在vue.js中加载选择

来自分类Dev

Vue.js动态组件重新加载

来自分类Dev

从API在vue.js中加载图像