UNPKG

framework7.angular

Version:

Full Featured Mobile HTML Framework For Building iOS & Android Apps using Angularjs

43 lines (40 loc) 1.29 kB
Framework7.prototype.plugins.angular = function (app, params) { function compile(newPage) { try { var $page = $(newPage); var injector = angular.element(document).injector(); if (injector && $page ) { var $compile = injector.invoke(function ($compile) { return $compile; }); var $timeout = injector.invoke(function ($timeout) { return $timeout; }); var $scope = injector.invoke(function ($rootScope) { return $rootScope; }); $scope = $scope.$$childHead; $timeout(function () { $compile($page)($scope); }); } } catch (e) { console.error("Some Error Occured While Compiling The Template", e); } } function removeOldPage(pageData) { var $oldPage = $(".views .view .pages .page").not($(pageData.container)); if ($oldPage.length > 0) { var controllerName = $oldPage.attr("ng-controller"); var $scope = angular.element('[ng-controller=' + controllerName + ']').scope(); if ($scope) { $scope.$destroy(); $oldPage.remove(); } } } return { hooks: { pageInit: function (pageData) { compile(pageData.container); }, pageAfterAnimation: function (pageData) { removeOldPage(pageData); } } } };