Angular项目配置Ngx Bootstrap后组件不生效且无报错如何解决?
解决方案
- 修复
UiElementsModule的导出配置
你当前的UiElementsModule仅导入了Ngx Bootstrap的相关模块,但没有对外导出,Angular模块中导入的依赖默认仅对模块内部可见,必须显式导出才能被其他导入该模块的组件使用。修改后的代码如下:
import { NgModule } from '@angular/core'; import { TooltipModule } from 'ngx-bootstrap/tooltip'; import { BsDatepickerModule } from 'ngx-bootstrap/datepicker'; @NgModule({ imports: [ BsDatepickerModule.forRoot(), TooltipModule.forRoot() ], // 新增exports配置,导出需要共享的模块 exports: [ BsDatepickerModule, TooltipModule ] }) export class UiElementsModule { }
检查业务组件所属模块的依赖导入
如果CustomerComponent是声明在LayoutsModule(或其他非AppModule的子模块)中,仅在AppModule导入UiElementsModule是无效的,你需要将UiElementsModule导入到CustomerComponent所属的子模块的imports数组中。确认Bootstrap样式已引入
Ngx Bootstrap不自带Bootstrap核心样式,需要手动引入才会生效,你可以选择以下任意一种方式引入:- 在
angular.json的build -> options -> styles数组中添加路径:"node_modules/bootstrap/dist/css/bootstrap.min.css" - 在全局样式文件
styles.css中添加导入语句:@import "bootstrap/dist/css/bootstrap.min.css";
- 在
检查版本匹配
确认你安装的Ngx Bootstrap版本和当前Angular项目版本对应,大版本不匹配会出现无报错但功能不生效的问题。
内容的提问来源于stack exchange,提问作者shehan96
相关产品推荐
相关产品推荐

