2017-02-21 39 views
0

Когда я пытаюсь изменить состояние программно, URL-адрес изменяется, но представление не загружается. После обновления страницы он загружается отлично, но перезагрузка его с использованием $window.location.reload(true); кажется немного необычной.

Контроллер

myApp.controller('WelcomeController', ['$scope', '$state', '$window', 
    function($scope, $state, $window) { 
     $scope.changePage = function() { 
      $state.go('signup'); 
      // $window.location.reload(true); 
     }; 
    } 
]); 

Штаты

$stateProvider.state('signup', { 
    url: '/signup', 
    templateUrl: 'templates/signup.html', 
    controller: 'LoginController' 
}).state('welcome', { 
    url: '/welcome', 
    templateUrl: 'templates/welcome.html', 
    controller: 'WelcomeController' 
}); 

signup.html

<ion-view view-title="Signup"> 
    <ion-content class="padding"> 
     <h2>Form</h2> 
    </ion-content> 
</ion-view> 

ш elcome.html

<ion-view view-title="Welcome"> 
    <ion-content class="padding"> 
     <a class="button" href="#/signup">Sign In</a> 
     <button class="button" ng-click="changePage()">Sign In Programmatic</a> 
    </ion-content> 
</ion-view> 

index.html

<body ng-app="myApp" ng-strict-di> 
    <ion-nav-bar class="bar-positive"> 
     <ion-nav-back-button></ion-nav-back-button> 
    </ion-nav-bar> 
    <ion-nav-view></ion-nav-view> 
</body> 

Это работает просто отлично: <a class="button" href="#/signup">Sign In</a>

Что может быть проблема здесь? Я новичок в ионной или угловой и буквально застрял здесь в течение двух дней. Пробовал поиск в Интернете, обнаружил, что у некоторых других тоже была эта проблема, но ни одна из них, похоже, не решила мою проблему.

+0

Предоставлять больше кода, проблема не приходит от того, что вы предоставили. – Mistalis

+0

Добавлен еще один код, на самом деле все это. нет ничего другого, кроме заявления приложения и ионных кодов кордоны по умолчанию. –

+0

Вы вложили в ваш модуль «ui.router»? – nivas

ответ

-2
$state.go('signup') 

должен работать правильно, если правильный путь к шаблону.

Или попробуйте ниже формат пути

templateUrl: site_url+'templates/signup.html', 

site_url представляет вам URL сайта экс www.examlple.com

+0

Это не то, что я имел в виду. Я хочу изменить состояние программно, а не напрямую щелкая ссылку. –

+0

Проверьте правильность пути к шаблону или нет. Также проверьте консоль браузера для любой ошибки. –

+0

Ничего в консоли. Белый как смерть. –