私はphonegap + AngularJS + Framework7を使用して電話アプリケーションを開発しました。 私の問題はframework7のスワップページから始まります。Framework7とAngularJSでページをロード
Framework7ユーザがリンクボタンを押したときに動的に新しいHTMLページをDOMに注入します。したがって、挿入した新しいhtmlパーツを再コンパイルするには、$ compileと$ apply()をangleで使用する必要があります。
ただし、ウィンドウを開くと、アニメーションが途切れることがありますが、同時に読み込んでコンパイルしています。 私のコンパイルコードは、ということです。
//listiner for new page injection to DOM.
$$(document).on('pageInit', function (e) {
//on page init , compile the new DOM ijected.
$compile(angular.element(document.getElementsByClassName(e.detail.page.container.className)).contents())($scope);
$scope.$apply();
});
「beforeAnimation」というイベントもあります。 アニメーションの前にすべてをコンパイルしてユーザーに読み込みスピナーを表示し、ページが準備できたらアニメーションを開始してそのページを表示したいと思っていたのでしょうか? しかし、私はこのソリューションを実装する方法がわかりません$compile
と$apply()
は同期ですか?新しいページのアニメーションが$compile
と$apply
の後にのみ開始されることを約束しておかなければなりません。
あなたが他の解決策について考えるなら、私はそれを聞いてうれしいです。
私はあなたには、いくつかのスターターをチェックアウトをお勧めパッケージ、たぶんionic.ioプロジェクト。 Angular1とAngular2の両方のプロジェクト。 –