han*_*ans 6 azure-active-directory adal webpack adal.js angular
在我的NG2项目中,如果我写:
import adal from 'adal-angular';
Run Code Online (Sandbox Code Playgroud)
它给了我'adal is undefined'.这是为什么?
我想在我的angular 2项目中使用adal.js.
我已经跑了
npm install adal-angular --save
npm install @types/adal --save
Run Code Online (Sandbox Code Playgroud)
然后,在我的component.ts文件中,如果我这样做:
从'adal-angular'导入adal;
adal未定义.
如何在component.ts文件中正确导入,还可以使用打字?
han*_*ans 20
要解决这个问题,您需要做很多事情:
npm install adal-angular --save (=>"@types/adal": "^1.0.22")
npm install @types/adal --save-dev (=>"adal-angular": "^1.0.12")
npm install expose-loader
Run Code Online (Sandbox Code Playgroud)
安装这些软件包后,您必须执行以下操作:
在component.ts中:
/// <reference path="../../../node_modules/@types/adal/index.d.ts" />
import 'expose?AuthenticationContext!../../../node_modules/adal-angular/lib/adal.js';
let createAuthContextFn: adal.AuthenticationContextStatic = AuthenticationContext;
现在,您可以使用createAuthContextFn初始化身份验证上下文
let config: adal.Config = { clientId : 'test' };
let context = new createAuthContextFn(config);
(可选)要处理来自AD的回调,请在引导程序组件AppComponent中写下这段代码:
if (context.isCallback(location.hash)) {
var requestInfo = context.getRequestInfo(location.hash);
context.saveTokenFromHash(requestInfo);
}
归档时间: |
|
查看次数: |
5374 次 |
最近记录: |