| 1234567891011121314151617181920212223242526272829 |
- import { createApp } from 'vue'
- import { renderToString, SSRContext } from '../src/renderToString'
- import { ssrRenderPortal } from '../src/helpers/ssrRenderPortal'
- describe('ssrRenderPortal', () => {
- test('portal rendering', async () => {
- const ctx = {
- portals: {}
- } as SSRContext
- await renderToString(
- createApp({
- data() {
- return { msg: 'hello' }
- },
- ssrRender(_ctx, _push, _parent) {
- ssrRenderPortal(
- _push => {
- _push(`<div>content</div>`)
- },
- '#target',
- _parent
- )
- }
- }),
- ctx
- )
- expect(ctx.portals!['#target']).toBe(`<div>content</div>`)
- })
- })
|