2014-09-13 18 views
7

Attualmente, le uniche soluzioni che ho trovato per l'animazione tra percorsi sono appena sfumate nella pagina corrente onBeforeAction e si dissolvono nella nuova pagina onAfterAction. Ma questo è solo zoppo.Transizioni di pagine animate tra percorsi Iron Router con Meteor

Voglio provare ad eseguire some really sleek transitions like these.

Credo che questo richieda di avere più pagine visualizzate contemporaneamente sulla pagina, ma sembra che richieda molte risorse e non sembra nemmeno utilizzare il router di ferro.

Qualche idea su come posso implementarlo?

risposta

3

Questa domanda sembra essere richiesta in modo equo e non esiste una soluzione definitiva, e molte risposte là fuori stanno diventando obsolete, o almeno non applicabili agli ultimi Iron-Router e Meteor 1.0.

Ho appena fatto un po 'di ricerca in giro per la migliore risposta e almeno oggi sembra i pacchetti per questo sono:

https://github.com/percolatestudio/momentum-iron-router/ e https://github.com/ccorcos/meteor-transitioner/

Il primo non è stato aggiornato in un poco tempo ma ha un sacco di impegni. Quest'ultimo ha pochi impegni ma potrebbe essere attivamente lavorato.

Sono in corso su di loro in modo da provare se non ricordo Vado a controllare di nuovo in.

+4

ehi, in realtà ho appena fatto quest'ultimo. haha. Ho dimenticato questa domanda – Chet

+0

FYI - Ho appena provato entrambi su Meteor 1.1.0.3. Ho avuto errori con 'momentum-iron-router' (insieme a poche altre persone che hanno tutti lo stesso problema nella pagina Issues. Ccorcos: meteor-transitioner sta lavorando alla grande. – evolross

4

Io uso una soluzione di questo http://meteorpad.com/pad/5kii9SRbbnjiTHeQe

Il MeteorPad non permette di utilizzare IronRouter, quindi il mio esempio non lo usa. In IronRouter è possibile utilizzare il metodo action() per impostare la variabile di sessione "currentPage" e rendere sempre il modello "transitioner". Qualcosa di simile a questo:

Router.map(function() { 
    this.route('home', { 
    path: '/', 
    action: function() { 
     Session.set('currentPage', 'home'); 
     this.render('transitioner'); 
    } 
    }); 

    this.route('about', { 
    action: function() { 
     Session.set('currentPage', 'about'); 
     this.render('transitioner'); 
    } 
    }); 
}); 

io uso un wrapper per questo. Mi aiuta anche a definire stili e direzioni di transizione.

E fai attenzione agli abbonamenti/annullamenti di iscrizione, perché la pagina precedente reagirà alle modifiche delle iscrizioni prima che la transizione sia completa!

+0

meteorpad non funziona per me in questo momento, ma vedo quello che stai facendo qui. Sembra un dolore però. Ma poi di nuovo, non vedo nessun altro modo di farlo ...:/ – Chet

+0

Sì, penso che tu possa organizzare tutto questo in modo più utile, ma il principio rimarrà lo stesso. Oppure puoi aspettare un aggiornamento di Iron-Transitioner, ma usa lo stesso principio e non è stato aggiornato per molto tempo. –

+0

hmmm. grazie per l'aiuto. Fammi vedere cosa riesco a trovare – Chet

Problemi correlati