diff --git a/packages/marko/src/runtime/helpers/tags-compat-html.js b/packages/marko/src/runtime/helpers/tags-compat-html.js index 829a45ee6..994c38651 100644 --- a/packages/marko/src/runtime/helpers/tags-compat-html.js +++ b/packages/marko/src/runtime/helpers/tags-compat-html.js @@ -86,7 +86,11 @@ patchDynamicTag( if (renderer5) { renderer5(input, out); } else { - renderBody5(out, ...input.value); + if (Array.isArray(input?.value)) { + renderBody5(out, ...input.value); + } else { + renderBody5(out); + } } const componentsContext = ___getComponentsContext(out); diff --git a/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-class-to-tags/__snapshots__/html.expected/template.js b/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-class-to-tags/__snapshots__/html.expected/template.js index fcf667831..e46cd7c5f 100644 --- a/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-class-to-tags/__snapshots__/html.expected/template.js +++ b/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-class-to-tags/__snapshots__/html.expected/template.js @@ -6,6 +6,8 @@ import { x as _marko_escapeXml } from "marko/src/runtime/html/helpers/escape-xml import _marko_tags_compat from "marko/src/runtime/helpers/tags-compat-html.js"; import _tagsLayout from "./components/tags-layout.marko"; import _marko_dynamic_tag from "marko/src/runtime/helpers/dynamic-tag.js"; +import _initComponents from "marko/src/core-tags/components/init-components-tag.js"; +import _marko_tag from "marko/src/runtime/helpers/render-tag.js"; import _marko_renderer from "marko/src/runtime/components/renderer.js"; const _marko_component = { onCreate() { @@ -30,6 +32,7 @@ _marko_template._ = _marko_renderer(function (input, out, _componentDef, _compon out.w(_marko_escapeXml(baseCount * state.multiplier)); out.w(""); }, null, null, _componentDef, "0"); + _marko_tag(_initComponents, {}, out, _componentDef, "3"); }, { t: _marko_componentType, d: true diff --git a/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-tags-to-class/__snapshots__/html.expected/components/class-layout.js b/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-tags-to-class/__snapshots__/html.expected/components/class-layout.js index 3d35bc2b4..b0d668cda 100644 --- a/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-tags-to-class/__snapshots__/html.expected/components/class-layout.js +++ b/packages/translator-interop/src/__tests__/fixtures/interop-tag-params-tags-to-class/__snapshots__/html.expected/components/class-layout.js @@ -4,6 +4,8 @@ const _marko_componentType = "packages/translator-interop/src/__tests__/fixtures export default _marko_template; import { x as _marko_escapeXml } from "marko/src/runtime/html/helpers/escape-xml.js"; import _marko_dynamic_tag from "marko/src/runtime/helpers/dynamic-tag.js"; +import _initComponents from "marko/src/core-tags/components/init-components-tag.js"; +import _marko_tag from "marko/src/runtime/helpers/render-tag.js"; import _marko_renderer from "marko/src/runtime/components/renderer.js"; const _marko_component = { onCreate() { @@ -22,6 +24,7 @@ _marko_template._ = _marko_renderer(function (input, out, _componentDef, _compon out.w("