2016-12-06 95 views
1

我的網站有許多不需要登錄的頁面,有一些這樣做,當轉換到那些需要驗證的頁面時,ember-simple-auth的效果很好。當我在不需要身份驗證的頁面上,並嘗試登錄時,我將轉換爲爲routeAfterAuthentication設置的任何內容。ember簡單auth:登錄後重定向到之前的路由

不幸的是,我真正想要的是,如果我在不需要驗證的頁面上,例如,和我驗證,我會返回到posts/1234。這如何實現?

我已經通過了ember-simple-auth代碼精梳ApplicationRouteMixin一個合適的方式來覆蓋sessionAuthenticated,但我仍然不知道的方式通知得到的應用程序路徑,以返回到什麼路線,或者說PARAMS應該給出路線。

回答

0

的EmberJS路由器保存有關用戶已經在那裏的信息,所以只需添加到您的路由,該/在行動的application.js文件中的對象:

sessionAuthenticationSucceeded: function() { 
    this.transitionTo(
    this.controllerFor('application').get('previousRouteName') 
); 
} 

這大概可以由ember-記錄在案更好簡單認證的人。

0

我的應用程序默認這樣做,這是你的驗證路線看起來像什麼?

import Ember from 'ember'; 
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin'; 

export default Ember.Route.extend(AuthenticatedRouteMixin, {}); 
+0

我相信我提到所有AuthenticatedRoute(s)都按我的意願工作。問題在於不需要認證的路由。當我使用登錄流從這些頁面登錄時,我被重定向到別處,並且無法自動返回登錄流程開始的頁面。 –

+0

對不起,錯過了那個重要的方面。 – Graham