Ich habe heute mit UI-Router herumspielen in dem Versuch, das Gerüst in Ionic besser zu verstehen und eine Sache, die ich bemerkte, war, dass sie den abstrahierten Zustand von "Tabs" eine URL geben.Warum geben Sie einem "abstract: true" -Zustand eine URL?
Die einzigen Male, die ich jemals abstrakte Zustände verwendet habe, habe ich eine leere Zeichenfolge als URL verwendet und ich merke, dass wenn ich jemals versehentlich versucht habe, zu einem abstrahierten Zustand (im Gegensatz zum Kind-Zustand) zu navigieren der Fehler:
Cannot transition to abstract state '[insertAbstractStateHere]'
edit:
„Darüber hinaus in dem experimentieren, wenn ich versuche, eine uRL zu meinem abstrakten Zustand (außerhalb von Ionic) zuweisen und nach wie vor die verschachtelten Zustandsansichten machen, ich ein großes Gänseei. Nichts zeigt sich überhaupt. "
die oben genannte Aussage ist falsch! Ich versuchte es wieder in Plunker und die verschachtelten Zustände zeigten sich.
angular.module('routingExperiments', ['ui.router'])
.config(function($urlRouterProvider, $stateProvider) {
$stateProvider
.state('abstractExperiment', {
abstract: true,
url: '', //<--- seems as if any string can go here.
templateUrl: 'abstractExperiment.html'
})
.state('abstractExperiment.test1', {
url: '/test1',
templateUrl: 'abstractTest1.html'
});
});
Offenbar habe ich es tatsächlich falsch gemacht. Also meine neue Frage lautet:
Gibt es einen Grund, warum man einen benannten Zustand im Gegensatz zu einer leeren Zeichenfolge in abstrakten Zuständen verwenden würde, oder ist es nur eine Stilwahl?
Danke, Matt. Hast du jemals eine leere Saite benutzt, in der du ''/ home'' hast? Das ist mehr die Quelle meiner Verwirrung an diesem Punkt.Warum macht man den anderen gegenüber? Es scheint keinen Unterschied zu machen. – spb
Hinzugefügt erweiterte Informationen für Sie :) –
genial. * high five * – spb