Ng引导和Angular 9兼容性
升级到Angular 9后,我发现与ng引导相关的以下错误: src/app/shared/Components/form controls/dropdown select/dropdown select.component中出错。ts:87:63- 错误TS2304:找不到名称“NgbDropdownMenu” 87@ViewChild('dropdownMenu',{static:false})dropdownMenu:NgbDropdownMenu; ~~~~~~~~~~~~~~~ src/app/private/private shared/Services/ngb modal stack extend.service.ts:1:39-错误TS2305:Module'../../../../../../../../../../../../../../../../../../../../../../../../../../node_modules/@ng bootstrap/ng bootstrap''没有导出的。1导入{NgbModalRef,NgbActiveModal,isString,isDefined,NgbModalBackdrop,ContentRef,NgbModal, 来自“@ng bootstrap/ng bootstrap”的NgbModalWindow}; ~~~~~~~~ src/app/private/private shared/Services/ngb模态堆栈extend.service.ts:1:49-错误TS2305:Module “../../../../../../../../../../../../../../node_modules/@ng bootstrap/ng bootstrap/ng bootstrap””没有 导出的成员“已定义”。 1导入{NgbModalRef,NgbActiveModal,isString,isDefined,NgbModalBackdrop,ContentRef,NgbModal, 来自“@ng bootstrap/ng bootstrap”的NgbModalWindow}; ~~~~~~~~~ src/app/private/private shared/Services/ngb modal stack extend.service.ts:1:60-错误TS2305:Module'../../../../../../../../../../../../../../../../../../../../../../../../../../node_modules/@ng bootstrap/ng bootstrap/ng 导出的成员“NgbModalBackdrop” 1导入{NgbModalRef,NgbActiveModal,isString,isDefined,NgbModalBackdrop,ContentRef,NgbModal, 来自“@ng bootstrap/ng bootstrap”的NgbModalWindow}; ~~~~~~~~~~~~~~~~ src/app/private/private shared/Services/ngb模态堆栈extend.service.ts:1:78-错误TS2305:Module “../../../../../../../../../../../../../../node_modules/@ng bootstrap/ng bootstrap/ng bootstrap””没有 导出的成员“ContentRef”。 1导入{NgbModalRef,NgbActiveModal,isString,isDefined,NgbModalBackdrop,ContentRef,NgbModal, 来自“@ng bootstrap/ng bootstrap”的NgbModalWindow}; ~~~~~~~~~~ src/app/private/private shared/Services/ngb模态堆栈extend.service.ts:1:100-错误TS2305: 模块“../../../../../../../../../../../../../node_modules/@ng bootstrap/ng bootstrap/ng bootstrap””具有 没有导出成员“NgbModalWindow” 1导入{NgbModalRef,NgbActiveModal,isString,isDefined,NgbModalBackdrop,ContentRef,NgbModal, 来自“@ng bootstrap/ng bootstrap”的NgbModalWindow} Package.json "@angular/cdk": "9.2.4", "@angular/common": "9.1.11", "@angular/compiler": "9.1.11", "@angular/core": "9.1.11", "@angular/forms": "9.1.11", "@angular/localize": "9.1.11", "@angular/material": "9.2.4", "@angular/platform-browser": "9.1.11", "@angular/platform-browser-dynamic": "9.1.11", "@angular/router": "9.1.11", "@ng-bootstrap/ng-bootstrap": "4.1.2", "rxjs": "6.3.3", }, "devDependencies": { "@angular-builders/jest": "^7.2.0", "@angular-devkit/build-angular": "~0.1000.0", "@angular/cli": "^9.1.9", "@angular/compiler-cli": "9.1.11", "@schematics/angular": "^9.1.5", Package.json “@angular/cdk”:“9.2.4”, “@angular/common”:“9.1.11”, “@angular/compiler”:“9.1.11”, “@angular/core”:“9.1.11”, “@angular/forms”:“9.1.11”, “@angular/localize”:“9.1.11”, “@角度/材料”:“9.2.4”, “@角度/平台浏览器”:“9.1.11”, “@angular/platform browser dynamic”:“9.1.11”, “@angular/router”:“9.1.11”, “@ng bootstrap/ng bootstrap”:“4.1.2”, “rxjs”:“6.3.3”, }, “依赖性”:{ “@angular builders/jest”:“^7.2.0”, “@angular devkit/build angular”:“~0.1000.0”, “@angular/cli”:“^9.1.9”, “@angular/compiler cli”:“9.1.11”, “@schematics/angular”:“^9.1.5”,Ng引导和Angular 9兼容性,angular,ng-bootstrap,Angular,Ng Bootstrap,升级到Angular 9后,我发现与ng引导相关的以下错误: src/app/shared/Components/form controls/dropdown select/dropdown select.component中出错。ts:87:63- 错误TS2304:找不到名称“NgbDropdownMenu” 87@ViewChild('dropdownMenu',{static:false})dropdownMenu:NgbDropdownMenu; ~~~~~~~~~~~~~~~ src
ng bootstrap 4.x.x适用于Angular 7。您需要将其更新为ng bootstrap 6.x.x才能与Angular 9配合使用。您可以查看ng bootstrap兼容性表以及安装说明,更新与下表相关的版本
ng-bootstrap Angular Bootstrap CSS
1.x.x 5.0.2 4.0.0
2.x.x 6.0.0 4.0.0
3.x.x 6.1.0 4.0.0
4.x.x 7.0.0 4.0.0
5.x.x 8.0.0 4.3.1
6.x.x 9.0.0 4.4.1
7.x.x 10.0.0 4.5.0
Ngbdropdownmenu是否已导入?我已从“@ng bootstrap/ng bootstrap”添加了导入{Ngbdropdownmenu},并且我得到一个错误属性“_menu”是私有的,并且只能在类“NgbDropdown”中访问此代码:@ViewChild('dropdownMenu',{static:false})下拉菜单:NgbDropdownMenu;@HostListener('window:resize')onResize(){if(this.dropDownMenu.isOpen&&this.dropDownMenu.dropdown._menu.placement=='top'