Oggi sto girando intorno con l'interfaccia utente per cercare di capire meglio l'impalcatura in Ionic e una cosa che ho notato è che danno lo stato astratto di "schede" un url.Perché fornire un "abstract: true" indica un URL?
Le uniche volte in cui ho mai usato stati astratti, ho usato una stringa vuota come URL e ho notato che se ho mai tentato accidentalmente di navigare verso uno stato astratto (al contrario dello stato figlio), ottengo l'errore:
Cannot transition to abstract state '[insertAbstractStateHere]'
edit:
"Inoltre, nella sperimentazione, quando cerco di assegnare un URL al mio stato astratto (al di fuori di ionica) e ancora rendere la vista statali annidati, ottengo un grande uovo d'oca, niente si vede affatto. "
la dichiarazione sopra citata è falsa! Ho provato di nuovo in Plunker e gli stati nidificati si sono mostrati.
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'
});
});
A quanto pare stavo davvero sbagliando. Quindi la mia nuova domanda è:
C'è qualche ragione per cui si dovrebbe usare uno stato chiamato in contrapposizione a una stringa vuota nell'impiego di stati astratti, o è solo una scelta di stile?
Grazie, Matt. Hai mai usato una stringa vuota in cui hai ''/ home'', però? Questa è più la fonte della mia confusione, a questo punto.Perché uno si contrappone all'altro? Non sembra fare la differenza. – spb
Aggiunto informazioni estese per te :) –
fantastico. * high five * – spb