fix(ssr): watchEffect onInvalidate runner initialization (#3323)

close #3322
This commit is contained in:
TJ Koblentz
2021-03-25 08:17:57 -07:00
committed by GitHub
parent bf34e33c90
commit e4b5fccd0c
2 changed files with 16 additions and 3 deletions

View File

@@ -8,9 +8,10 @@ import {
defineComponent,
createTextVNode,
createStaticVNode,
KeepAlive,
withCtx,
Transition
KeepAlive,
Transition,
watchEffect
} from 'vue'
import { escapeHtml } from '@vue/shared'
import { renderToString } from '../src/renderToString'
@@ -775,5 +776,15 @@ function testRender(type: string, render: typeof renderToString) {
const html = await render(app)
expect(html).toBe(`<div>hello</div>`)
})
// https://github.com/vuejs/vue-next/issues/3322
test('effect onInvalidate does not error', async () => {
const noop = () => {}
const app = createApp({
setup: () => watchEffect(onInvalidate => onInvalidate(noop)),
render: noop,
})
expect(await render(app)).toBe('<!---->')
})
})
}