@@ -317,6 +317,35 @@ describe('ssr: components', () => {
317
317
` )
318
318
} )
319
319
320
+ // #13724
321
+ test ( 'slot content with v-memo' , ( ) => {
322
+ const { code } = compile ( `<foo><bar v-memo="[]" /></foo>` )
323
+ expect ( code ) . not . toMatch ( `_cache` )
324
+ expect ( compile ( `<foo><bar v-memo="[]" /></foo>` ) . code )
325
+ . toMatchInlineSnapshot ( `
326
+ "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createVNode: _createVNode } = require("vue")
327
+ const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
328
+
329
+ return function ssrRender(_ctx, _push, _parent, _attrs) {
330
+ const _component_foo = _resolveComponent("foo")
331
+ const _component_bar = _resolveComponent("bar")
332
+
333
+ _push(_ssrRenderComponent(_component_foo, _attrs, {
334
+ default: _withCtx((_, _push, _parent, _scopeId) => {
335
+ if (_push) {
336
+ _push(_ssrRenderComponent(_component_bar, null, null, _parent, _scopeId))
337
+ } else {
338
+ return [
339
+ _createVNode(_component_bar)
340
+ ]
341
+ }
342
+ }),
343
+ _: 1 /* STABLE */
344
+ }, _parent))
345
+ }"
346
+ ` )
347
+ } )
348
+
320
349
describe ( 'built-in fallthroughs' , ( ) => {
321
350
test ( 'transition' , ( ) => {
322
351
expect ( compile ( `<transition><div/></transition>` ) . code )
0 commit comments