В идеале, когда я нажимаю на кнопку (которая находится на панели навигации Ionic наверху), она должна выводить меня на другую страницу. Однако его не работает. После нажатия кнопки панели навигации все исчезает.
Когда я использовал фиктивные коды, он работает; появится предупреждение. Но когда я меняю его на фактический код, он не работает.
У меня есть чувство, что неправильно с кодами контроллера и как ссылается URL или представление. Но тестирование с помощью href и ui-sref также ничего не дает. Google Devt Tools (JS console) и Batarang также ничего не показывают.
Может ли кто-нибудь показать мне, пожалуйста?
dummy html code
<button class="button button-icon ion-compose" ng-click="create()"></button>
код фиктивного контроллера в файле js
$scope.create = function() {
alert("working");
};
фактический html-код (я пробовал все 4 версии)
<button class="button button-icon ion-compose" ng-click="create('tab.newpost')"></button>
<button class="button button-icon ion-compose" ui-sref="tab.newpost"></button>
<button class="button button-icon ion-compose" href="/tab/newpost"></button>
<button class="button button-icon ion-compose" ng-click="location.path('/tab/newpost')"></button>
Файл контроллера (зависимости Post и Auth работают нормально). Когда я пытаюсь поместить URL-адрес в функции .go() и function(), приложение не работает.
app.controller('NavCtrl', function ($scope, $location, $state, Post, Auth) {
$scope.post = {url: 'http://', title: ''};
$scope.create = function() {
/* $location.path('/tab/newpost'); */ /* this variant doesnt work */
$state.go("/tab/newpost");
};
});
Извлечения файла js состояния
.state('tab.newpost', {
url: '/newpost',
views: {
'tab-newpost':{
templateUrl: 'templates/tab-newpost.html',
controller: 'NewCtrl'
}
}
});
$urlRouterProvider.otherwise('/auth/login');