我在我的应用程序上替换锁定9锁定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 <- auth
.
此外,文件bower_components/angular-auth0/build/angular-auth0.js
没有auth0Provider
,但angularAuth0Provider
,我可以在配置块中注入,但不给我访问auth
,生成相同的Unknown provider: authProvider <- auth
错误。
我不确定我是否做错了什么,或者如果我正在尝试的实现是不可能的。
谢谢。
最新的angular包angularAuth0
与原来的包不同,它只是auth0.js
库的一个薄包装,而不是一个更健壮的客户端。auth
不再存在,取而代之的是具有不同功能的angularAuth0
。另外,看看angular-jwt
,因为许多isAuthenticated
类型的功能已经转移到它:https://github.com/auth0/angular-jwt
此升级与以前的集成完全不同:(