2016-07-30 84 views
1

如果我在我的Ember應用程序中的頁面上,手動編輯URL或使用標識同一應用程序內的其他路線的書籤,默認情況下會重新加載頁面,失去了它所具有的任何瞬態狀態,而不是像在應用中遵循Ember控制的鏈接那樣進行轉換。是否有Ember的內置功能可以很好地集成到路由功能中,從而防止這種情況發生,並且只是轉換?沒有頁面重新加載書籤或手動URL編輯

詳情:

與Ember的默認路由,網址本身的變化,而不只是片段標識符(「哈希」)。例如,在Quick Start例如,如果你在http://server/scientists,並想在程序員的名單看,而不是,你去http://server/programmers

如果你通過點擊由灰燼處理的鏈接時,加載的頁面就好內的工作(我假設灰燼底層使用歷史API,而不重新加載頁面替換狀態)。不會導致頁面重新加載。

但是,如果您使用的是http://server/scientists並點擊書籤可帶您到http://server/programmers(或手動編輯網址),它會重新加載頁面,從而丟失頁面包含的任何瞬態狀態。

相比之下,即使您手動編輯地址欄或使用書籤,在使用片段標識符進行路由(例如Gmail)的應用中,(例如)http://server/#scientistshttp://server/#programmers的等效更改也不會導致頁面重新加載。 (當然,這只是對片段標識符的更改,而不是實際的URL。)

Ember中是否有內置處理功能,可以很好地集成到其路由功能中,使其無需重新加載即可處理該用例?通過使用片段標識符而不是更改URL或使用某些History API功能? (雖然我想不出可以做到這一點的History API功能)。

回答

相關問題