Я разработал телефонное приложение с помощью phonegap + AngularJS + Framework7. Моя проблема начинается с страниц подкачки framework7.Загрузите страницы с Framework7 и AngularJS
Framework7 вводит новую HTML-страницу в DOM динамически, когда пользователь нажимает кнопку ссылки. следовательно, я должен использовать $ compile и $ apply() с угловым, чтобы повторно скомпилировать новую часть html, которая была введена.
, но открытие окна аннулирование прерывается, пока загружается и компилируется в то же время. моей компиляции кода является то, что:
//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. –