fix(compiler-ssr): only inject fallthrough attrs for root transition/keep-alive

This commit is contained in:
Evan You
2022-05-18 08:37:24 +08:00
parent c03459b9b6
commit c65b805ef1
2 changed files with 29 additions and 4 deletions

View File

@@ -290,6 +290,25 @@ describe('ssr: components', () => {
}"
`)
// should inject attrs if root with coomments
expect(compile(`<!--root--><transition><div/></transition>`).code)
.toMatchInlineSnapshot(`
"const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
return function ssrRender(_ctx, _push, _parent, _attrs) {
_push(\`<!--[--><!--root--><div\${_ssrRenderAttrs(_attrs)}></div><!--]-->\`)
}"
`)
// should not inject attrs if not root
expect(compile(`<div/><transition><div/></transition>`).code)
.toMatchInlineSnapshot(`
"
return function ssrRender(_ctx, _push, _parent, _attrs) {
_push(\`<!--[--><div></div><div></div><!--]-->\`)
}"
`)
expect(compile(`<keep-alive><foo/></keep-alive>`).code)
.toMatchInlineSnapshot(`
"const { resolveComponent: _resolveComponent } = require(\\"vue\\")