【问题标题】:Unexpected value 'MatTableDataSource' imported by the module 'AppModule'. Please add a @NgModule annotation模块“AppModule”导入的意外值“MatTableDataSource”。请添加@NgModule 注释
【发布时间】:2022-04-08 07:27:13
【问题描述】:

我正在使用 angular 5 开发一个 angular 应用程序。我想使用 angular-material 中的“MatTableDataSource”。但是我收到了这个错误

模块“AppModule”导入的意外值“MatTableDataSource”。请添加@NgModule 注解。

我正在寻找解决这个问题的方法。我在 git 中找到了这个解决方案

https://github.com/angular/material/issues/10981

一位名叫@dliebel 的用户给出了解决方案。我应用了它,但一次又一次地得到这个错误。 app.module.ts 在下面指定

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { HttpModule } from '@angular/http';
import { ReactiveFormsModule, FormsModule, FormArray } from '@angular/forms';
import { HttpClientModule } from '@angular/common/http';
import { AppComponent } from './app.component';
import { SellDetailFormComponent } from './sellDetail/sellDetailForm.component';
import { RouterModule, Routes } from '@angular/router';
import { HotTableModule } from '@handsontable/angular';
import { CommonModule } from '@angular/common';
import { MatTableModule, MatSortModule,MatTableDataSource } from '@angular/material';
import { SellTableComponent } from './sellDetail/sellTable.component';


const appRoutes: Routes = [
{ path: 'sellTable', component: SellTableComponent }


];

@NgModule({
declarations: [
  AppComponent,SellTableComponent
 ],
imports: [
BrowserModule, HttpModule, FormsModule,
RouterModule.forRoot(appRoutes), ReactiveFormsModule,HotTableModule.forRoot() ,
 HttpClientModule, HotTableModule, 
CommonModule,MatTableModule,MatSortModule,MatTableDataSource
],
bootstrap: [AppComponent]
})
export class AppModule { }

【问题讨论】:

  • 分享你的 app.module
  • @Vikas 我编辑了我的问题
  • MatDataTableSource 不是角度模块,将其从导入中删除
  • 我想问题现在已经解决了?
  • 是的。非常感谢。

标签: angular


【解决方案1】:

不要在app模块中导入,直接在component.ts文件中导入使用

如果这不能解决问题

这可能是我遇到的版本兼容性问题 很可能我需要将“@angular/material”和“@angular/cdk”更新为“5.0.0-rc.2”,这解决了我的问题

看看什么版本符合你的需要和使用

【讨论】:

    【解决方案2】:

    尝试正确导入模块。

    import { MatFormFieldModule, MatInputModule, MatPaginatorModule, MatTableModule, MatSortModule } from '@angular/material';
    
    imports: [
        MatFormFieldModule, 
        MatInputModule, 
        MatPaginatorModule, 
        MatTableModule, 
        MatSortModule 
      ]
    

    对我来说效果很好。

    【讨论】:

    • 稍微格式化你的答案
    【解决方案3】:

    MatDataTableSource 不是角度模块。从导入中删除它。您只需按照 angular material 添加组件本身。

    import {MatTableDataSource} from '@angular/material';
    

    【讨论】:

      【解决方案4】:

      自更新以来MatTableDataSource 的新导入

      import {MatTableDataSource} from '@angular/material/table';

      【讨论】:

        【解决方案5】:

        我从导入中删除了“MatTableDataSource”,现在它对我有用。

        【讨论】:

          【解决方案6】:

          在模块中导入后,它对我有用

          【讨论】:

            猜你喜欢
            • 2018-01-10
            • 2019-12-01
            • 2021-09-02
            • 2020-04-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多