【问题标题】:Storybook 6 error: ngrx no provider for Store error - how to fix? [closed]Storybook 6 错误:ngrx no provider for Store 错误 - 如何修复? [关闭]
【发布时间】:2021-03-09 14:51:41
【问题描述】:

使用 ng serve / nx serve 时,我的 Angular10 应用程序运行良好。 NGRX 商店和功能商店按预期工作。

但是,当我尝试从项目中的任何 Lib 运行 Storybook 时,我会遇到错误。 为什么是这样?我该如何解决?到目前为止我还没有找到解决方案。

这是错误的一部分:

StaticInjectorError(Platform: core)[InjectionToken @ngrx/store Check if Action types are unique -> InjectionToken @ngrx/store Internal Runtime Checks]: 
    NullInjectorError: No provider for InjectionToken @ngrx/store Internal Runtime Checks!

有人知道解决办法吗?谢谢。

【问题讨论】:

  • 确保在你的模块中导入 StoreModule。
  • @TitusSutioFanpula 是的,你是对的!问题是我需要导入 Store 和 Effects 模块 - 即使故事的功能使用 ngrx 商店。我没有意识到这是必需的。

标签: angular testing ngrx storybook angular-storybook


【解决方案1】:

@TitusSutioFanpula 为我解决了这个问题。 问题是我需要导入 Ngrx Store & Effects 模块,即使故事中运行的实际功能没有使用 Ngrx。

所以为了让它正常运行,我需要像这样导入它们:

export default {
  title: 'LayoutComponent',
  decorators: [
    withKnobs,
    moduleMetadata({
      imports: [
        LayoutModule,
        StoreModule.forRoot({}),
        EffectsModule.forRoot([]),
        HttpClientModule
      ]
    })
  ]
};

有没有人有关于 Angular Storybook 开发的任何好的指南/资源? (希望 Angular Storybook 有更好的文档,这应该可以加快我的开发过程,但我发现它比以往任何时候都更耗时)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-31
    • 2019-04-20
    • 1970-01-01
    • 2023-02-26
    • 2018-10-31
    • 1970-01-01
    • 1970-01-01
    • 2020-11-02
    相关资源
    最近更新 更多