描述bug
你好!在将我的设置迁移到使用Angular 15.1.5、Storybook 6.5.16和Webpack 5之后,我终于能够构建完整的应用程序了🎉🎉🎉
然而,似乎SB的iframes没有正确地在文档或画布页面上渲染Angular组件,并且我看到了一个JIT编译错误:Errors during JIT compilation of template for FieldComponent: Opening tag "label\n" not terminated. ("export default "[ERROR ->]<label\n *ngIf=\"!!_labelChildren?.length\"\n class=\"field-label typography-component-input-label\"): ng:///FieldComponent/template.html@0:16, Opening tag "ng-content" not terminated. ("abled ? 'field-label-disabled' : ''\n ]\"\n [attr.for]=\"_control.id\"\n [id]=\"_labelId\"\n>\n [ERROR ->]<ng-content select=\"halo-field-label\"></ng-content>\n <span\n class=\"field-label-required\"\n "): ng:///FieldComponent/template.html@0:366, Unexpected closing tag "ng-content". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags
这个错误对于使用Angular的多插槽内容投影样式的每个组件都会重复出现。
组件示例:<ng-content select="field-label"></ng-content>
.
实现示例:<field-label>Label</field-label>
堆栈跟踪中提到的组件在迁移之前是工作的,现在在一个单独的ng 15应用程序消费测试中也是工作的。
重现问题
-- 使用文档中的脚本迁移SB
-- 使用文档中的脚本和指南迁移NG
-- 升级到Webpack 5.75.0
-- 升级到Typescript 4.9.5
系统信息
Environment Info:
System:
OS: macOS 13.1
CPU: (8) arm64 Apple M1
Binaries:
Node: 16.15.0 - ~/.nvm/versions/node/v16.15.0/bin/node
Yarn: 1.22.19 - ~/.nvm/versions/node/v16.15.0/bin/yarn
npm: 8.5.5 - ~/.nvm/versions/node/v16.15.0/bin/npm
Browsers:
Chrome: 105.0.5195.125
Edge: 110.0.1587.57
Firefox: 109.0.1
Safari: 16.2
npmPackages:
@storybook/addon-actions: ~6.5.16 => 6.5.16
@storybook/addon-essentials: ~6.5.16 => 6.5.16
@storybook/addon-links: ~6.5.16 => 6.5.16
@storybook/addons: ~6.5.16 => 6.5.16
@storybook/angular: ~6.5.16 => 6.5.16
@storybook/builder-webpack5: ~6.5.16 => 6.5.16
@storybook/manager-webpack5: ~6.5.16 => 6.5.16
@storybook/theming: ~6.5.16 => 6.5.16
6条答案
按热度按时间vbopmzt11#
重复的#21336。
mlmc2os52#
Hi @valentinpalkovic - 我查看了这个问题,我不认为这是#21336的重复。
我没有收到相同的错误,我的Storybook在构建时没有错误。我提到的错误是iframe渲染我的组件时的运行时错误:
关于行为的一些更多信息:当我导航到文档和其他故事时,组件最终会通过多次点击进行渲染。它似乎在页面加载时无法正确渲染。
0sgqnhkj3#
你是对的。我判断得太早了。
但是我认为答案会在这里相同。我们将不再调查Angular 15的问题在6.5,因为7.0的发布就在眼前。请尝试升级到最新的7.0 beta并再次尝试,因为我们在与Angular相关的改进方面做了很多工作,并在SB 7.0中添加了对Angular 15的官方支持。
如果你有兴趣升级到SB 7.0,请遵循迁移指南:
https://chromatic-ui.notion.site/Storybook-7-migration-guide-dbf41fa347304eb2a5e9c69b34503937
w46czmvw4#
@shilman, 你能请移除
duplicate
标签吗?这个问题与 #21336 分开处理。我正在继续针对 6.5.16 和 Storybook 7 运行测试,如果有任何变化,我会更新这个帖子。
谢谢!
t40tm48m5#
当然可以!
k5ifujac6#
我遇到了相同的错误,不确定你的上下文是否相同。但在我的案例中,我试图将一个函数作为参数传递。以下是我如何解决它的方法:
问题:
修复: