模块'AppModule'导入的意外值'DataTablesModule'.请添加@NgModule注释

pra*_*lad 7 datatables angular

我是Angular Data表的新手,我正按照链接https://l-lin.github.io/angular-datatables/#/getting-started中的说明尝试实现Angular Data表.

在我尝试使用Angular CLI运行应用程序后按照说明操作后,我收到Uncaught Error:模块'AppModule'导入的意外值'DataTablesModule'.请添加@NgModule注释.

注意:我在app.module.ts中添加了DataTablesModule,如下所示

import { ActionComponent } from './action/action.component';
import { SearchfilterPipe } from './search/searchfilter.pipe';
import { DataTablesModule } from 'angular-datatables';

@NgModule({
declarations: [
AppComponent,
routingComponents,
LicenseComponent,
HeaderComponent,
ActionComponent,
FooterComponent,
SearchfilterPipe

],
imports: [
BrowserModule,
HttpModule,
FormsModule,
DataTablesModule,
AppRoutingModule,
NgbModule.forRoot()
],
providers: [HttpModule],
bootstrap: [AppComponent]
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

并在.angular-cli.json中添加了以下代码

{
"apps": [
{
  ...
  "styles": [
    "../node_modules/datatables.net-dt/css/jquery.dataTables.css"
  ],
  "scripts": [
    "../node_modules/jquery/dist/jquery.js",
    "../node_modules/datatables.net/js/jquery.dataTables.js"
  ],
  ...
 }
 ]
 }
Run Code Online (Sandbox Code Playgroud)

我使用以下提供的版本.

@ angular/cli:1.1.0
节点:8.0.0
@ angular/compiler:4.2.3
@ angular/core:4.2.6
@ angular/compiler-cli:4.2.3

不明白为什么我的应用程序正在崩溃.任何输入/建议将受到高度赞赏.

Nou*_*our 7

首先修改你的tsconfig.json并在里面添加这个块

{
  "compilerOptions": {
    ...
    "baseUrl": "./",
    "paths": {
      "@angular/*": [
        "../node_modules/@angular/*"
     ]
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

接下来,angular-datatables实际安装一个版本node_modules并包含其@angular内部的副本,这会导致角度版本之间的冲突,所以只需删除node_modulesfrom angular-datatables文件夹,你就可以了.