【问题标题】:AuthenticatedRouteMixin: No redirection when route hooks are overriddenAuthenticatedRouteMixin:覆盖路由挂钩时不重定向
【发布时间】:2015-01-09 00:41:10
【问题描述】:

如果我在索引路由中定义 beforeModel 挂钩,似乎会跳过身份验证。 也许这会覆盖 mixin 的 beforeModel...

示例:在我从路由中删除“beforeModel”之前,以下内容不会将我重定向到 /login。 'afterModel' 和其他可能的钩子也是如此

// app/routes/index.js
import Ember from 'ember';
import AuthenticatedRouteMixin from 'simple-auth/mixins/authenticated-route-mixin';

export default Ember.Route.extend(AuthenticatedRouteMixin,{
 beforeModel : function(){
    // empty function
  }
});

任何帮助将不胜感激。 我想做的是从路由到路由的简单转换。例如。当 URL 很简单时转到 /users/userlist /users

【问题讨论】:

    标签: ember.js ember-simple-auth


    【解决方案1】:

    正如您已经建议的那样,这会覆盖 mixin 的实现。您需要拨打this._super(transition);

    beforeModel: function(transition, queryParams) {
      this._super(transition, queryParams);
      …
    }
    

    【讨论】:

    • 试过这个。它在控制台中给了我以下错误:Cannot read property 'abort' of undefined TypeError:Cannot read property 'abort' of undefined
    • 请注意,如果路由不使用 mixin,我不会收到此错误。因此,当在路由中使用 mixin 时,调用 this._super();在控制台中引发错误。
    • 你需要传递过渡参数 - 修复了上面的答案
    猜你喜欢
    • 2018-10-09
    • 2011-02-08
    • 2016-10-29
    • 1970-01-01
    • 1970-01-01
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多