Sto passando al nuovo router ember ma ho una domanda molto semplice - come faccio a capire quale percorso sono attualmente? Prima di poter fare qualcosa come App.router.get('currentState')
, ma questo non sembra funzionare più come il router non eredita più da StateManager
Ember.js per il percorso corrente
risposta
Dai un'occhiata a questo question.
Riepilogo: lo currentState
è ora memorizzato nella proprietà currentPath
nel tuo ApplicationController. La soluzione è stata accettata all'osservatore questa proprietà di scrivere in una proprietà globale:
App = Em.Application.create({
currentPath: ''
});
ApplicationController : Ember.Controller.extend({
updateCurrentPath: function() {
App.set('currentPath', this.get('currentPath'));
}.observes('currentPath')
});
io probabilmente ottenere fatto saltare per questo, ma dopo un sacco di frustrazione con questo ho deciso di implementare una soluzione veramente brutto.
Il mio caso d'uso stava cercando di ottenere l'ID del post corrente perché stavo inviando una risposta ad esso. Pensate a qualcosa di simile per il nostro percorso attuale:
" ... #/post/12345"
mia soluzione (codice più brutto mai):
var currentId = window.location.hash.split('/')[2];
App.Message.createRecord({
content: message,
inReplyTo: currentId
}).get('transaction').commit();
+1 nessuno può biasimarti per aver effettivamente realizzato ciò che volevi, anche se va lungo il modo "brutto". –
controller ho potuto ottenere il percorso corrente nome usando il codice qui sotto. Buona fortuna
this.get ("currentRouteName")
- 1. Ottieni il percorso corrente con il segmento dinamico in ember.js
- 2. ember.js - definire percorso con parametro opzionale e il modello predefinito
- 3. Visualizza il percorso corrente solo nel terminale
- 4. Come ottenere il percorso corrente nei binari
- 5. Come ottenere il percorso corrente in Aurelia
- 6. Come ottenere il percorso corrente in HtmlHelper?
- 7. Ottieni percorso cartella corrente
- 8. Percorso script corrente extendscript
- 9. Identifica il percorso corrente in Aurelia
- 10. Come ottenere il percorso dell'assieme corrente
- 11. Più router in ember.js?
- 12. ember.js e il server
- 13. Come configurare più controller nello stesso percorso in ember.js?
- 14. Accesso al modello del percorso principale in Ember.js
- 15. ember.js - scambia una risorsa nidificata da qualsiasi percorso
- 16. Ottieni il percorso del file di configurazione dell'applicazione corrente
- 17. xslt ottiene il percorso della cartella corrente del file
- 18. Ottieni il percorso file di un file nel progetto corrente
- 19. react router ottiene il nome completo del percorso corrente
- 20. Come ottenere il percorso assoluto del nome file javascript corrente
- 21. Come si genera il percorso dell'elemento corrente in XSLT?
- 22. Ottenere il percorso corrente in un componente di reazione
- 23. Trova il percorso del file m corrente in MATLAB
- 24. Ottenere percorso del desktop per l'utente corrente su OS X
- 25. Come modificare automaticamente il percorso corrente in Vim?
- 26. Estrarre il percorso corrente dal messaggio netlink, codice allegato
- 27. Come ottenere il percorso del file di script InnoSetup corrente?
- 28. Percorso del file corrente dipende da come eseguo il programma
- 29. Come posso ottenere l'URL o il percorso corrente in TWIG?
- 30. Come ottenere l'URL completo con il percorso corrente in Capybara
Grande, grazie. Mi chiedo se abbiano rimosso di proposito quella funzionalità, però - perché ci fanno fare tutto questo da soli per ottenere il percorso attuale? –
Sry, non lo so. Io stesso non l'ho mai usato a livello di programmazione. L'ho usato solo per scopi di debug. – mavilein
Così ho appena provato questo - sembra funzionare, tranne che non potrei chiamare '' 'set''' su' '' App'''. Tutte le chiamate al set sembravano fallire silenziosamente. Invece l'ho semplicemente impostato direttamente ('' 'App.currentPath = this.get 'currentPath'''') poiché ho solo bisogno di questo per scopi di debug –