Ne pouvait pas résoudre les '...' à partir de l'état "
C'est la première fois que je suis en train d'utiliser l'interface utilisateur du routeur.
Voici mon app.js
angular.module('myApp', ['ionic'])
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
//Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
//for form inputs)
if(window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if(window.StatusBar) {
StatusBar.styleDefault();
}
});
})
.config(function($stateProvider, $urlRouterProvider){
$urlRouterProvider.otherwise("/index.html");
$stateProvider.state('index', {
url: '/'
template: "index.html",
controller: 'loginCtrl'
});
$stateProvider.state('register', {
url: "/register"
template: "register.html",
controller: 'registerCtrl'
});
})
Comme vous pouvez le voir, j'ai deux états. J'essaie d'enregistrer l'état comme ceci:
<a ui-sref="register">
<button class="button button-balanced">
Create an account
</button>
</a>
Mais je suis
N'a pas pu résoudre "registre" d'état "
exception. Quel est le problème ici?
- C'est un peu idiot, mais je vois que vous êtes en train de créer le module 'myApp' et sont inscription "ionique" comme une dépendance, cependant, je ne vois pas 'ui-router" comme une dépendance. Êtes-vous compris quelque part d'autre?
- ionique prend soin de cela.
- J'ai juste trouvé que récemment, je n'avais pas utilisé ionique avant, mais je suis de l'utiliser pour un projet mobile maintenant. C'est assez incroyable.
Vous devez vous connecter pour publier un commentaire.
Ce genre d'erreur signifie généralement, qu'une partie de la (js) le code n'a pas été chargé. Que l'état qui est à l'intérieur de
ui-sref
est manquant.Il est un exemple de travail
Je ne suis pas un expert dans ionique, de sorte que cet exemple devrait montrer qu'il serait de travail, mais j'ai utilisé quelques trucs de plus (parent pour les onglets)
C'est un peu ajusté état def
Et ici, nous avons la vue parent avec des onglets, et leur contenu:
Prendre plus d'un exemple de la façon de faire exécuter et de les utiliser plus tard ionique cadre de la bonne façon...Vérifier que l'exemple ici
Ici est similaire Q & a avec Un exemple à l'aide de vues nommées (sûrement la meilleure solution) ionique problème de routage, montre une page vierge
Version améliorée avec des vues nommées dans l'onglet est ici: http://plnkr.co/edit/Mj0rUxjLOXhHIelt249K?p=preview
ciblage des vues nommées:
.run ($state) { console.log($states.get()); });
Viens ici pour partager ce qui se passait pour moi.
Vous n'avez pas besoin de spécifier les parents, les états travailler dans un document orienté manière, au lieu de spécifier parent: app, vous pouvez simplement modifier l'état d'application.l'indice de
MODIFIER
Attention, si vous voulez aller en profondeur dans l'imbrication, le chemin d'accès complet doit me spécifié. Par exemple, vous ne pouvez pas avoir un état comme
sans avoir un
ou angulaire, une exception sera levée en disant qu'il ne peut pas comprendre la déroute. Pour résoudre ce que vous pouvez définir des états abstraits
EDIT Warning, if you want to go deep in the nesting, the full path must me specified. For example, you can't have a state like
, c'était mon problème.url
propriété de l'état du milieu, puis la route qui suiturl
sera ajouté à l'itinéraire précédent url.J'ai juste eu le même problème avec Ionique.
Il s'avère rien de mal avec mon code, j'ai simplement dû quitter l'ionique servir de session et d'exécuter ionique servir de nouveau.
Après le retour dans l'app, mes états a bien fonctionné.
Je vous suggère aussi d'en appuyant sur enregistrer sur votre app.js déposer un peu de temps si vous exécutez gulp, pour s'assurer que tout se re-compilé.
J'ai eu un cas où l'erreur a été jeté par un
Ce qui est évident. Je suppose que cela peut aider quelqu'un dans le futur.
Eu le même problème avec Ionique de routage.
Solution Simple est d'utiliser le nom de l'état - essentiellement
state.go(state name)
Et dans le contrôleur, vous pouvez utiliser
$state.go('tab.search');
Comme répondu par Magus :
États abstraits peuvent être utilisés pour ajouter un préfixe à tous les enfants de l'état url.
Mais notez que abstrait a toujours besoin d'un ui-view pour ses enfants pour remplir. Pour ce faire, vous pouvez simplement ajouter la ligne.
Pour plus d'informations, voir la documentation : https://github.com/angular-ui/ui-router/wiki/Nested-States-%26-Nested-Views