没有 ngModule 的 ng 构建错误
Posted
技术标签:
【中文标题】没有 ngModule 的 ng 构建错误【英文标题】:ng build Errors with not an ngModule 【发布时间】:2018-09-27 18:35:38 【问题描述】:我正在尝试在我的 Angular 项目上运行 ng build,但我不断收到错误
ERROR in Unexpected value 'MatTooltipModule in /Users/strypeez/Dropbox/gosco-webNEW/gosco-webUPTODATE/node_modules/@angular/material/tooltip/typings/index.d.ts' imported by the module 'AppModule in /Users/strypeez/Dropbox/gosco-webNEW/gosco-webUPTODATE/src/app/app.module.ts'. Please add a @NgModule annotation.
这就是我在 app.module.ts 中导入它的方式
import MatTooltipModule from '@angular/material/tooltip';
我的导入中有它
imports: [
FormsModule,
BrowserModule,
AppRoutingModule,
BrowserAnimationsModule,
MatTooltipModule, ]
我可以做些什么来修复错误?
编辑:我添加了我的依赖项,有什么会导致问题吗?
"dependencies":
"@angular/animations": "^4.1.3",
"@angular/cdk": "^2.0.0-beta.12",
"@angular/common": "^4.1.3",
"@angular/compiler": "4.1.3",
"@angular/core": "4.1.3",
"@angular/forms": "4.1.3",
"@angular/http": "4.1.3",
"@angular/material": "^2.0.0-beta.12",
"@angular/platform-browser": "4.1.3",
"@angular/platform-browser-dynamic": "4.1.3",
"@angular/router": "4.1.3",
"@angular/upgrade": "4.1.3",
【问题讨论】:
你能发布你的 app.module.ts 吗? 首先我会升级 Angular 并包括@angular/material
,然后在 app.module
中从 @angular/material
导入它,然后将其添加到导入和导出中。请查收:link
【参考方案1】:
这可能是一个错误的导入,我现在没有要测试的环境,但是根据 Angular Material,您需要将其导入为:
import MatTooltipModule from '@angular/material';
这是文档: https://material.angular.io/components/tooltip/api
当我尝试使用旧的 Angular 项目时,我似乎遇到了零问题。
还有我的依赖:
"@agm/core": "1.0.0-beta.0",
"@angular/animations": "4.4.4",
"@angular/cdk": "^2.0.0-beta.12",
"@angular/common": "4.4.4",
"@angular/compiler": "4.4.4",
"@angular/core": "4.4.4",
"@angular/flex-layout": "^2.0.0-beta.8",
"@angular/forms": "4.4.4",
"@angular/http": "4.4.4",
"@angular/material": "^2.0.0-beta.12",
"@angular/platform-browser": "4.4.4",
"@angular/platform-browser-dynamic": "4.4.4",
"@angular/router": "4.4.4",
"@ng-bootstrap/ng-bootstrap": "1.0.0-alpha.29",
"@ngrx/effects": "^4.0.1",
"@ngrx/store": "^4.0.0",
"@ngrx/store-devtools": "^4.0.0",
"@ngx-translate/core": "7.1.0",
"@ngx-translate/http-loader": "1.0.1",
"@swimlane/ngx-charts": "6.0.1",
"@swimlane/ngx-datatable": "9.3.1",
"angular-calendar": "0.19.0",
"angular-datatables": "^4.4.1",
"angular-tree-component": "3.8.0",
"angular2-datatable": "^0.6.0",
"angular2-text-mask": "8.0.2",
"angularfire2": "^4.0.0-rc.1",
"bootstrap": "4.0.0-alpha.6",
"classlist.js": "^1.1.20150312",
"core-js": "2.4.1",
"d3": "^4.8.0",
"datatables.net": "^1.10.16",
"datatables.net-dt": "^1.10.16",
"dragula": "3.7.2",
"firebase": "4.1.3",
"hammerjs": "2.0.8",
"intl": "^1.2.5",
"jquery": "^3.2.1",
"ng-sidebar": "6.0.1",
"ng2-ckeditor": "^1.1.9",
"ng2-dragula": "1.5.0",
"ng2-file-upload": "1.2.1",
"ng2-quill-editor": "^2.0.0",
"ng2-validation": "4.2.0",
"quill": "1.3.0",
"resize-observer-polyfill": "^1.4.2",
"rxjs": "5.4.2",
"screenfull": "3.3.1",
"spinthatshit": "1.0.3",
"text-mask-addons": "3.6.0",
"web-animations-js": "^2.2.5",
"zone.js": "0.8.10"
【讨论】:
你可以参考我发布的截图,我已经在我的环境中尝试过这个例子,它似乎工作得很好。您是否尝试仅运行示例?我之前也遇到过节点模块的问题,删除文件夹以获取新的 npm i 不会有什么坏处。 我发布了我的依赖项,是否有任何问题,因为我已经重新安装了节点模块 @strypeez 我还添加了我的依赖项,尝试将您的依赖项升级到我在构建它时使用的内容并没有什么坏处,因为它似乎工作正常。以上是关于没有 ngModule 的 ng 构建错误的主要内容,如果未能解决你的问题,请参考以下文章
Angular 12迁移问题错误NG6002:出现在AppModule的NgModule.imports中,但本身有错误
多个模块中的管道重用,NG6007(由多个 NgModule 声明)或 NG6002(无法解析为 NgModule 类),
错误:找不到“AppModule”的 NgModule 元数据
出现在 AppModule 的 NgModule.imports 中,但无法解析为 Angular 8 中的 NgModule 类