モバイル アプリで Google マップと場所を使用するので、アプリの読み込みが遅くなるようなことはしたくありません。
エッジ ネットワークで、アプリの起動が非常に遅いことがわかりました。私のjsはすべてローカルであるため、ロードに時間がかかるのはGoogleマップと場所だけです(マップと場所をhtmlファイルから削除すると、ロードが速くなります)。
index.html
<script>....</script>
<script src='http://maps.google.com/maps/api/js?key=mykey&sensor=false'></script>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>
</body>
Load google maps v3 dynamic with ajax で、Google マップを非同期的にダウンロードする方法を見つけました。
$.getScript("http://maps.google.com/maps/api/js?key=mykey&sensor=false&async=2&callback=MapApiLoaded", function () {});
function MapApiLoaded() {
$.ajaxSetup({async:false});
$.getScript("http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false");
$.ajaxSetup({async:true});
alert('loading places done');
}
アラートを受け取り、$.getScript() が正常に返されることを確認しましたが、場所を使用しようとすると、javascript コンソールに次のエラーが表示されます: Google マップの場所は未定義です。
HTMLファイルに場所のみを持ち、Googleマップを非同期にロードしようとしましたが、どちらも機能しません。
何か案が ?前もって感謝します。