【问题标题】:angular-auth0 issue: Unknown provider: authProvider <- authangular-auth0 问题:未知提供者:authProvider <- auth
【发布时间】:2017-01-15 17:16:53
【问题描述】:

我在我的应用程序上将 Lock 9 替换为 Lock 10,以便能够向注册小部件添加自定义选项(额外的电子邮件和密码确认)。为了使过渡顺利进行,我正在使用这个库 https://github.com/auth0/angular-auth0,正如 Ryan Chenkie 在这个 auth0 论坛上所建议的那样:https://auth0.com/forum/t/is-lock-10-incompatible-with-angular/3297/9(最后一个帖子)。

根据库文档,在实现脚本并注册模块auth0.auth0 后,我应该可以在我的配置块中访问auth0Provider,并能够使用它来配置init 方法。这是文档上的实现(您也可以访问链接):

bower install angular-auth0

<script src="bower_components/auth0.js/build/auth0.js"></script>
<script src="bower_components/angular-auth0/build/angular-auth0.js"></script>

var app = angular.module('myApp', ['auth0.auth0']);

app.config(function(auth0Provider) {
  auth0Provider.init({
   clientID: AUTH0_CLIENT_ID,
   domain: AUTH0_DOMAIN
  });
});

这应该允许我在我的控制器中使用auth 或以这种方式运行块:

app.run(function(auth) {
  var vm = this;
  vm.auth = auth;
});

但是,当我加载应用程序时,我收到以下错误消息:Unknown provider: authProvider &lt;- auth。

此外,文件bower_components/angular-auth0/build/angular-auth0.js 没有auth0Provider,而是angularAuth0Provider,我可以在配置块中注入它,但不能访问auth,生成相同的Unknown provider: authProvider &lt;- auth错误。

我不确定我做错了什么,或者我正在尝试的实现是不可能的。

谢谢。

【问题讨论】:

  • 我可以使用angularAuth0 而不是auth,但我不确定这些对象是否等价。我认为应用程序应该像以前一样简单地工作而无需进一步配置,但事实并非如此。

标签: angularjs auth0


【解决方案1】:

最新的 Angular 包 angularAuth0 与原来的不同,因为它只是 auth0.js 库的薄包装,而不是更强大的客户端。 auth 不再存在,取而代之的是具有不同功能的angularAuth0。另外,看看angular-jwt,因为isAuthenticated 类型的大部分功能已经转移到它上面:https://github.com/auth0/angular-jwt

此次升级与之前的集成完全不同:(

【讨论】:

  • 感谢您的回答。我们正在使用的库中存在冲突。我们修好了。如果你想了解更多关于这个问题的信息,请在这个 auth0 论坛上找到我的 cmets 和 Ryan Chenkie:auth0.com/forum/t/is-lock-10-incompatible-with-angular/3297/11
  • 谢谢 - 从单页应用的角度来看,使用自定义登录/注册屏幕 Auth0 是一团糟。
  • 直接使用 API 而不是锁定小部件对我们来说效果很好。实现有点复杂,但同样有效。
猜你喜欢
  • 1970-01-01
  • 2012-09-02
  • 2017-04-16
  • 2017-10-08
  • 2017-08-26
  • 2013-04-20
  • 1970-01-01
  • 2016-03-26
相关资源
最近更新 更多