使用CdkStepper触发NullR3InjectorError:无CdkStepper提供者,求解决
解决CdkStepper无提供者的错误
可行解决方案:
- 若使用自定义步进器组件,需在组件的
providers数组中配置CdkStepper的提供者映射,示例代码:
@Component({ selector: 'app-custom-stepper', templateUrl: './custom-stepper.component.html', styleUrls: ['./custom-stepper.component.css'], providers: [{ provide: CdkStepper, useExisting: CustomStepperComponent }] }) export class CustomStepperComponent extends CdkStepper { // 自定义逻辑代码 }
若直接使用原生
cdk-stepper组件:- 检查组件构造函数是否不必要注入了
CdkStepper服务,若无需注入则移除该参数; - 若确实需要注入
CdkStepper,需在对应模块的providers数组中添加CdkStepper,或尝试使用CdkStepperModule.forRoot()导入模块。
- 检查组件构造函数是否不必要注入了
排查懒加载场景:如果使用步进器的组件属于懒加载模块,必须在该懒加载模块内单独导入
CdkStepperModule,不能仅依赖AppModule的导入。
内容的提问来源于stack exchange,提问作者Aastha B
相关产品推荐
相关产品推荐

