2016-12-15 76 views
2

我需要實現阿達爾針對微軟的Windows Azure AD身份驗證。我正在使用angular2 CLI和angular2-adalangular2 CLI和angular2阿達爾錯誤

的問題是,當我AdalService添加到供應商給出了這樣的錯誤:

Uncaught Error: Cannot find module "adal" 
at webpackMissingModule (adal.service.js:20) 
at Object.<anonymous> (adal.service.js:20) 
at __webpack_require__ (bootstrap dd353fe…:52) 
at Object.<anonymous> (services.js:8) 
at __webpack_require__ (bootstrap dd353fe…:52) 
at Object.<anonymous> (core.js:12) 
at __webpack_require__ (bootstrap dd353fe…:52) 
at Object.638 (create-users.component.ts:15) 
at __webpack_require__ (bootstrap dd353fe…:52) 
at Object.647 (header.component.ts:47) 

這一個:

client?93b6:80./~/angular2-adal/services/adal.service.js 
Module not found: Error: Can't resolve 'adal' in 'D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\angular2-adal\services' 
resolve 'adal' in 'D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\angular2-adal\services' 
    Parsed request is a module 
    using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\angular2-adal\package.json (relative path: ./services) 
    Field 'browser' doesn't contain a valid alias configuration 
    after using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\angular2-adal\package.json (relative path: ./services) 
    resolve as module 
     looking for modules in D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src 
     using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\package.json (relative path: ./src) 
      Field 'browser' doesn't contain a valid alias configuration 
     after using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\package.json (relative path: ./src) 
      using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\package.json (relative path: ./src/adal) 
      as directory 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal doesn't exist 
      no extension 
       Field 'browser' doesn't contain a valid alias configuration 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal doesn't exist 
      .ts 
       Field 'browser' doesn't contain a valid alias configuration 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal.ts doesn't exist 
      .js 
       Field 'browser' doesn't contain a valid alias configuration 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal.js doesn't exist 
     looking for modules in D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules 
     using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\package.json (relative path: ./node_modules) 
      Field 'browser' doesn't contain a valid alias configuration 
     after using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\package.json (relative path: ./node_modules) 
      using description file: D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\package.json (relative path: ./node_modules/adal) 
      as directory 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal doesn't exist 
      no extension 
       Field 'browser' doesn't contain a valid alias configuration 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal doesn't exist 
      .ts 
       Field 'browser' doesn't contain a valid alias configuration 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal.ts doesn't exist 
      .js 
       Field 'browser' doesn't contain a valid alias configuration 
       D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal.js doesn't exist 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal.ts] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\src\adal.js] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal.ts] 
[D:\Git\SistecreditoTutoriales\SistecreditoTutoriales\src\TutorialesWeb\node_modules\adal.js] 

@ ./~/angular2-adal/services/adal.service.js 20:14-29 
@ ./~/angular2-adal/services.js 
@ ./~/angular2-adal/core.js 
@ ./src/app/app.module.ts 
@ ./src/app/index.ts 
@ ./src/main.ts 
@ multi main 

我一直在尋找可能的解決辦法,但很少答案沒有好結果。

回答

2

嘗試安裝阿達爾-TS:

npm install adal-ts --save 

它基本上是在打字稿adal.js的重寫。

2

原來,圖書館angular2阿達爾有解決this library ng2-adal其他人的錯誤。然後你需要解決2個問題的命名空間,不能解決'adal'。我解決了它這種方式:

  1. 命名空間:你需要在typings.d.ts添加///<reference path="../node_modules/ng2-adal/ts/adal/index.d.ts" />

  2. 不容解析 '阿達爾':您需要修改的WebPack在這條線路node_modules /角CLI /模型/的WebPack,累積commond.js文件,看看這樣的事情:

    resolve:{ 
         extensions: ['.ts', '.js'], 
         modules: [nodeModules], 
        }, 
    

,您需要添加:

alias: { 'adal': 'adal-angular' } 

請記住,我使用的是angular2 CLI。

如果有人知道更好的方法來添加別名到webpack請讓我知道