带有故事书 6 的 Angular 8
Posted
技术标签:
【中文标题】带有故事书 6 的 Angular 8【英文标题】:Angular 8 with Storybook 6 【发布时间】:2020-12-07 06:10:54 【问题描述】:安装和启动故事书时出现以下错误。
ERROR in /Users/username/angular-storybook/src/stories/Button.stories.ts
ERROR in /Users/username/angular-storybook/src/stories/Button.stories.ts(2,29):
TS2307: Cannot find module '@storybook/angular/types-6-0'.
ng 版本
Angular CLI: 8.3.29
Node: 12.16.2
OS: darwin x64
Angular: 8.2.14
开发依赖
"@compodoc/compodoc": "^1.1.11",
"@storybook/addon-actions": "^6.0.12",
"@storybook/addon-essentials": "^6.0.12",
"@storybook/addon-links": "^6.0.12",
"@storybook/angular": "^6.0.12"
【问题讨论】:
【参考方案1】:作为一种解决方法,我更新了来自 Button、Header、Page.stories 的导入:
From --->
import Story, Meta from '@storybook/angular/types-6-0';
To ---->
import Story, Meta from '@storybook/angular';
这很好用。但不确定为什么样板代码有问题。 :( 这适用于 6.0.12 版本。
更新: 使用较新版本的故事书(>6.2.*), 在 .storybook 目录中的 typings.d.ts 中显式声明。 (@Mr.7提到)
declare module '@storybook/angular'
【讨论】:
谢谢你,让我免了一些头痛,我很感激 :)【参考方案2】:就我而言,我尝试了 Subhakant 的解决方法,但这对我不起作用。经过一番研究,我发现了这一点。
.storybook 目录内的 typings.d.ts 中的显式声明使其工作
declare module '@storybook/angular'
【讨论】:
【参考方案3】:对我来说,这些都不起作用。我使用npx sb init
将故事书添加到现有的 Angular 6 项目中。可悲的是,它没有正确设置故事书,我收到了与 OP 相同的错误,但这里没有一个解决方案对我有用。最后我意识到,我的打字稿版本已经过时(3.8.4),但设置是针对 TS 3.9 的。我将 typescript 更新为 3.10.4,现在一切正常。
【讨论】:
以上是关于带有故事书 6 的 Angular 8的主要内容,如果未能解决你的问题,请参考以下文章