我得到奇怪的构建错误在我的角应用程序。有人能指出我做错了什么吗?我试图使用ADAL. js角包集成Azure AD身份验证。我使用adal-angular5
为此。
cli命令:ng serve
节点模块/@angular/core/src/render3/ng_dev_模式中出错。d、 ts(9,11):错误TS2451:无法重新声明块作用域变量“ngDevMode”。node_modules/adal-angular5/node_modules/@angular/core/src/render3/ng_dev_mode。d、 ts(9,11):错误TS2451:无法重新声明块作用域变量“ngDevMode”。
与ng build--prod一起使用时
@angular\common\http\http中出错。ts(62,2):decorators中不支持“HttpClient”函数调用的模板编译过程中出错,但在“可注射”“可注射”调用“ɵmakeDecorator”中调用了“ɵmakeDecorator”。node_modules/@angular/core/src/render3/ng_dev_mode。d、 ts(9,11):错误TS2451:无法重新声明块作用域变量“ngDevMode”。node_modules/adal-angular5/node_modules/@angular/core/src/render3/ng_dev_mode。d、 ts(9,11):错误TS2451:无法重新声明块作用域变量“ngDevMode”。
这里是我的角度版本的细节
Angular CLI: 6.1.4
Node: 8.11.4
OS: win32 x64
Angular: 6.1.3
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.7.4
@angular-devkit/build-angular 0.7.4
@angular-devkit/build-optimizer 0.7.4
@angular-devkit/build-webpack 0.7.4
@angular-devkit/core 0.7.4
@angular-devkit/schematics 0.7.4
@angular/cli 6.1.4
@ngtools/webpack 6.1.4
@schematics/angular 0.7.4
@schematics/update 0.7.4
rxjs 6.2.2
typescript 2.9.2
webpack 4.9.2
我的应用程序。蜕皮。ts供参考:
import { AuthService } from './services/auth.service';
import { AuthGuardService } from './services/auth-gurad.service';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { AppComponent } from './app.component';
import { ProtectedComponent } from './protected/protected.component';
import { AuthCallbackComponent } from './auth-callback/auth-
callback.component';
import { Adal5Service, Adal5HTTPService } from 'adal-angular5';
import { HttpClient } from '@angular/common/http';
const routes: Routes = [
{
path:'',
children: []
},
{
path:'protected',
component:ProtectedComponent,
canActivate: [AuthGuardService]
},
{
path:'auth-callback',
component:AuthCallbackComponent
}
];
@NgModule({
declarations: [
AppComponent,
ProtectedComponent,
AuthCallbackComponent
],
imports: [
BrowserModule,
RouterModule.forRoot(routes)
],
exports: [RouterModule],
providers: [AuthGuardService, AuthService, Adal5Service,{
provide:Adal5HTTPService, useFactory:Adal5HTTPService.factory, deps:
[HttpClient, Adal5Service] } ],
bootstrap: [AppComponent]
})
export class AppModule { }
这是我的tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "es2015",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
]
}
}
如果需要更多的参考资料,请告诉我。
看起来您正试图将Angular 6用于您的项目,但是adal-angular5
依赖于Angular 5。因此,Angular 5和Angular 6都已安装,它们的类型定义是冲突的;您在运行时也可能遇到问题。要么将您的项目切换到Angular 5,要么尝试adal-angular4
,它应该支持Angular 4和更新版本。
我有1个文件,对它添加了一个测试文件: test06.ts 当我在test06.spec.ts中引用此函数的时候报错:
问题内容: 如何在简短的变量声明中从其他块中重新声明变量? 关于此问题有很长的话题,但现在我很感兴趣如何解决此问题。 问题答案: 简短的变量声明的Go规范很明确: 短变量声明可以重新声明变量,只要它们最初是在同一块中以相同类型声明的,并且至少一个非空变量是新变量。 因此,在简短的变量声明中,您无法重新声明最初在其他块中声明的变量。 这是一个如何通过在内部块中声明局部变量()并将其()分配给在外部块
问题内容: 我有一个函数(从文件顶部开始,这就是它的外观): 由于某种原因,我不断收到错误消息: 致命错误:无法在/Applications/MAMP/htdocs/question- air/includes/functions.php中重新声明generate_salt()(先前在/Applications/MAMP/htdocs/question- air/includes/function
致命错误:无法在第9行的E:\wamp1\wamp\www\sample.php中重新声明关闭()(先前在E:\wamp1\wamp\www\sample.php: 1中声明) 当我运行这个脚本时,它说不能在第9行中重新声明近()(以前在第1行中被标记)。 即使出现错误,与和相关的值也会传递给css。我在这里做错了什么?我正在调用第9行中的函数。有什么帮助吗?
问题内容: 当我在node.js中键入时,我得到了。 如果没有关键字,则通过(=> 15)。它可以在Chrome控制台中运行(带有和不带有关键字)。 问题答案: 使用时它在Node中不起作用,因为它是 当前模块 的 本地变量 。您应该直接引用它:。 不输入时,发生的事情现在 是整个Node进程中的全局变量 。 在Chrome浏览器(或其他任何浏览器中-我不确定oldIE …),无论您是否在示例中使
问题内容: Java编译器如何处理以下开关块?“ b”变量的范围是什么? 注意,“ b”变量仅在switch语句的第一个分支中声明。尝试在第二个分支中声明它也会导致“重复的局部变量”编译错误。 注意:以上代码使用Java 1.6编译器进行编译。 问题答案: 与通常一样,范围由和分隔。