-1

共通の全体的なアプリ スコープを維持しながら、さまざまな視覚化ツールを交換できるシングル ページ アプリケーション (SPA) を作成できるかどうかを確認するために、ngview と角度ルーティングを試してきました。ngview にレンダリングできるコンテンツの種類に制限はありますか?

Google マップが埋め込まれた角度のある部分的な Web ページ (ビュー) を作成しようとしましたが、レンダリングされません。angular モジュール angular-gm は ngview ディレクティブをサポートしていると言っていますが、ngview での使用例を見つけることができず、私の試みは失敗しました。

では、一般に、部分的な Web ページ (ビュー) に埋め込まれたコンテンツの種類の制限は、 ngview で適切にレンダリング/アクティブ化されませんか?

そして、角度のある部分的な Web ページ (ビュー) に Google マップを埋め込み、それを ngview で正しくレンダリングするためのサンプル コードを持っている人はいますか?

ありがとう。

4

2 に答える 2

1

ビューに配置できるコンテンツに制限はありません。ディレクティブで、または角度ルーティングの後に JavaScript コンポーネントを初期化しないため、おそらく制限されています。

最も簡単な解決策は、おそらくコントローラーに初期化を配置するか、コントローラーで呼び出しますが、タイマーによって遅延させることです(例):

function controller($scope, $timeout) {
    setTimeout(startGoogleMap(), 0);
}

しかし、それを行う良い方法は、ディレクティブを使用することです。angular uiを見る必要があります。彼らはすでにGoogleマップのディレクティブを行っています。

http://angular-ui.github.io/

于 2013-08-14T22:51:15.450 に答える
1

ビュー内のコンテンツに実質的な制限がないというガルドの意見は正しい。ただし、おそらく遭遇するのは $scope の問題です。ng-view は新しい子スコープを作成します。親スコープの変数にアクセスしようとしている場合は、それらをビューに表示するために $parent (例: $parent.myScopedVar) を先頭に追加する必要があります。

とはいえ、ディレクティブがこの機能のより良いアプローチであるという点についても、Galdo に同意します。

于 2013-08-15T04:46:09.507 に答える