【问题标题】:Ember engines and Ember simple AuthEmber 引擎和 Ember 简单身份验证
【发布时间】:2017-04-24 22:20:17
【问题描述】:

我正在我的应用程序中实现 ember-engine。我正在使用 ember-simple-auth 插件进行身份验证。它适用于主要应用程序路线。

我用插件提供的 mixin 扩展了受保护的路由。

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

export default Ember.Route.extend(AuthenticatedRouteMixin);

现在我创建了一个用户引擎。其中有用户列表和其他一些东西。我希望用户只有在经过身份验证后才能访问此页面。在主应用程序路由中,我可以使用 mixin 扩展路由,如果用户未通过身份验证,它将重定向到登录路由。但同样的事情不适用于用户引擎路线。

知道如何使用 Ember 引擎实现 Ember-simple-auth 吗?

参考:-

Ember 引擎 - https://github.com/ember-engines/ember-engines

Ember 简单身份验证 - https://github.com/simplabs/ember-simple-auth

编辑-

//lib/users-engine/routes/edit.js
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';
export default Ember.Route.extend(AuthenticatedRouteMixin);

我尝试像上面那样扩展引擎路线。

【问题讨论】:

  • 从未使用过引擎(顺便说一句,您为什么决定使用它们?)但是查看 ember-engines 插件的描述,我想您需要在引擎中支持 ember-simple-auth(即添加到引擎的依赖项并修改引擎的路由)。
  • @GennadyDogaev 我尝试使用 ember-simple-auth 身份验证混合扩展引擎路由。但这不起作用。
  • 你能告诉我们你在哪里扩展引擎并导入你的依赖项吗? (例如):导出默认 Engine.extend({
  • @IAMZERG 更新了问题

标签: javascript authentication ember.js ember-engines


【解决方案1】:

您的引擎需要定义它需要主应用程序提供的依赖项。在您的情况下,您将需要简单的身份验证服务,有关更多详细信息,请参阅声明依赖项。

https://github.com/ember-engines/ember-engines#declaring-dependencies

注意:simple auth 使用的 mixin可能无法在此设置中开箱即用(但我认为它们应该)。在我的手机atm上,如果需要,可以稍后查看。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-24
    • 1970-01-01
    • 2020-08-28
    • 1970-01-01
    相关资源
    最近更新 更多