Web アプリのさまざまな場所で使用する必要がある Nokia マップのインスタンスがあります。毎回新しいインスタンスを作成する必要がないように、単一のマップを使用して、必要に応じてページ上で移動するのが理にかなっていると考えました。
オブジェクトは次のようにインスタンス化されます:
var map = new nokia.maps.map.Display(mapContainer, [options])
これでマップ オブジェクトを取得できましたが、使用している (カスタム) フレームワークが原因で、関数からそのオブジェクトにアクセスできません。スコープ外にあるためです。そのオブジェクトにアクセスする方法はありますか?
次のようにアクセスしてみました。
var map = nokia.maps.map.Display(mapContainer);
しかし、それは結果を生まなかったようです。
また、同じコンテナに新しいマップを作成しようとしましたが(上書きするか、何か賢いことをするかもしれないと考えていました)、2番目のマップを作成しただけで、役に立ちませんでした。また、マップをjQuery変数($.map = new nokia.maps.map.Display(mapContainer [options]))にしてみましたが、NokiaのマップAPIはまったく気に入りませんでした。
ドキュメントを調べていますが、何も見つからないようです。オブジェクトを保存して元に戻す方法を見つけられない限り、ユーザーが特定のアクションを実行するたびに新しいマップをインスタンス化する必要がありますが、これは理想的とは言えません。