故事书:moduleMetadata不会加载所需的服务,模块等

时间:2019-12-04 11:55:28

标签: javascript angular webpack storybook

我试图将Angular 8应用程序的组件加载到几乎没有集成到应用程序结构(动画,商店等)中的故事书中。但是我得到的只是Storybook本身的错误消息,它无法解析我的动画服务。我已经尝试通过将此服务作为提供程序导入到故事的模块元数据中来解决此问题,并将其作为提供程序导入到组件文件中。但这没有任何效果。

错误信息本身

Cannot access 'AnimationService' before initialization ; Zone: <root> ; Task: Promise.then ; Value: ReferenceError: Cannot access 'AnimationService' before initialization

这很奇怪,但是错误消息以下文本中分配的文件是动画文件和服务,未与我的故事的组件和app-store.module连接。

这是我的故事配置的摘要摘要 代码段 ParentModule 包含应用中某个区域的@Effect()等。该区域是一个内部包含许多组件的组件,例如 ComponentA 。提到的服务和动画文件不是此ParentModule的一部分。

export default {
  title: 'Name',
  parameters: {
    decorators: [
      withKnobs,
      moduleMetadata({
        declarations: [ComponentA],
        providers: [AnimationService],
        imports: [CommonModule, ParentModule]
      })
    ],
    'in-dsm': {
      id: 'CONTAINER-ID',
      versionFilePath: VERSION FILE,
      componentPath: ComponentA
    }
  }
};

系统Angular Version: 8.2.11 npx -p @ storybook / cli @ next sb信息

的结果
Environment Info:

  System:
    OS: macOS Mojave 10.14.6
    CPU: (12) x64 Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
  Binaries:
    Node: 10.16.1 - /usr/local/bin/node
    Yarn: 1.15.2 - /usr/local/bin/yarn
    npm: 6.9.0 - /usr/local/bin/npm
  Browsers:
    Chrome: 78.0.3904.108
    Firefox: 63.0.3
    Safari: 13.0.3
  npmPackages:
    @storybook/addon-a11y: ^5.2.8 => 5.2.8 
    @storybook/addon-actions: ^5.2.8 => 5.2.8 
    @storybook/addon-backgrounds: ^5.2.8 => 5.2.8 
    @storybook/addon-centered: ^5.2.8 => 5.2.8 
    @storybook/addon-knobs: ^5.2.8 => 5.2.8 
    @storybook/addon-links: ^5.2.8 => 5.2.8 
    @storybook/addon-notes: ^5.2.8 => 5.2.8 
    @storybook/addon-options: ^5.2.8 => 5.2.8 
    @storybook/addons: ^5.2.8 => 5.2.8 
    @storybook/angular: ^5.2.8 => 5.2.8 
    @storybook/core-events: ^5.2.4 => 5.2.4 

ps。此Angular应用是使用CLI创建的。 Webpack文件未自定义,并且故事书文件夹内的webpack配置为空。这两个tsconfigs(在故事书和根文件夹中)在"emitDecoratorMetadata": true

中都包含compilerOptions选项

1 个答案:

答案 0 :(得分:0)

好的,初始化问题解决了。我只是简单地启动了故事内部的main.js内容,即AppModule。现在还有其他一些问题,但与该问题不同。