使用 jsapi 加载程序加载地图 API 已弃用
Loading Maps API with the jsapi loader is deprecated
最近我在控制台日志中看到这条消息:
Loading Maps API with the jsapi loader is deprecated.
这是导致它的代码:
connected: function() {
...
},
initComponent: function() {
var me = this;
google.load('maps', '3', {
other_params: 'key=YOUR_API_KEY',
callback : me.connected
});
...
}
静态加载这对我来说不是一个真正的选择,因为 callback=connected
将回调到 window.connected()
而不是 me.connected()
:
<script async defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=connected"></script>
在回调本地范围时,google.load()
的替代方法是什么? Loading the Maps JavaScript API 处的文档仅提供静态加载。
在全局范围内添加此函数时:
window.connected = function() {
console.log("Maps API connected");
};
它表明它已连接,早在应用程序启动之前:
Maps API connected
Util.js:747 [V] the Application was launched.
所以这可能不是问题。我所要做的就是调用它 afterender
:
listeners: {
afterrender: function() {
appdata.items.panel.Maps.connected();
}
},