0
У меня странная проблема: когда я когда-либо пытаюсь поместить ng-show в свой popover.html, мое приложение получило зависание. и когда я комментирую его, приложение работает нормально. я действительно не понимаю, что происходит внутри моего кода.ng-show hanging все мое приложение
вот мой popover.html: -
<ion-popover-view> <ion-content>
<div ng-show="showsettingButton()">
\t <ion-item menu-close ng-click="logout()"> Sign Out <span
\t \t class="item-icon-right"><i class="ion-chevron-right"></i></span> </ion-item>
\t <ion-item menu-close ui-sref="app.profile"> Settings <span
\t \t class="item-icon-right"><i class="ion-chevron-right"></i></span> </ion-item>
</div>
<div class="list" ng-repeat="title in Titlelist">
\t <a class="item"
\t \t ng-click="openpage(title.page_title,title.page_content)">
\t \t {{title.page_title}} </a>
</div>
</ion-content> </ion-popover-view>
здесь мои функции в контроллере: -
app
\t \t .controller(
\t \t \t \t 'MenuCtrl',
\t \t \t \t function($scope, LocalStorage, $stateParams, $rootScope,
\t \t \t \t \t \t $state, store, ngCart, $window, $ionicHistory,
\t \t \t \t \t \t DataService, $ionicLoading, $ionicPopup, $http,
\t \t \t \t \t \t $ionicSideMenuDelegate, $ionicPopover) {
$scope.showsettingButton = function() {
\t \t \t \t \t \t $scope.popover.hide();
\t \t \t \t \t \t if (LocalStorage.getData("userId")) {
\t \t \t \t \t \t \t if (LocalStorage.getData("userId") !== "undefiened") {
\t \t \t \t \t \t \t \t DataService.setbooleanIsUserLoggedIn(true);
\t \t \t \t \t \t \t } else {
\t \t \t \t \t \t \t \t DataService.setbooleanIsUserLoggedIn(false);
\t \t \t \t \t \t \t }
\t \t \t \t \t \t } else {
\t \t \t \t \t \t \t DataService.setbooleanIsUserLoggedIn(false);
\t \t \t \t \t \t }
\t \t \t \t \t \t return DataService.getbooleanIsUserLoggedIn()
\t \t \t \t \t }
$ionicPopover.fromTemplateUrl('templates/popover.html', {
\t \t \t \t \t \t scope : $scope,
\t \t \t \t \t }).then(function(popover) {
\t \t \t \t \t \t $scope.popover = popover;
\t \t \t \t \t });
\t \t \t \t \t $scope.openpage = function(Pagetitle, Pagecontent) {
\t \t \t \t \t \t $scope.popover.hide();
\t \t \t \t \t \t var jsonObject = {
\t \t \t \t \t \t \t title : Pagetitle,
\t \t \t \t \t \t \t content : Pagecontent
\t \t \t \t \t \t }
\t \t \t \t \t \t DataService.addcontent(jsonObject)
\t \t \t \t \t \t $state.go('app.extraPage');
\t \t \t \t \t }
});
если я Comm Ent этой строки
<div ng-show="showsettingButton()"> <div/>
, мое приложение работает отлично.
Любая помощь будет полезна
Спасибо.
Возможно ли, что 'LocalStorage.getData ("идентификатор пользователя")' это линия висит? Возможно, он не может получить результаты. –
Можете ли вы поделиться с нами полным кодом (включая зависимости, такие как «LocalStorage») или (еще лучше) добавить фрагмент или скрипку? –
на месте ng-show попробуйте ng-if .. – sid