wip(ssr): component hydration

This commit is contained in:
Evan You
2020-02-13 23:31:03 -05:00
parent 32d6a46474
commit 42d80b5888
6 changed files with 192 additions and 141 deletions

View File

@@ -35,7 +35,7 @@ export const createApp: CreateAppFunction<Element> = (...args) => {
}
const { mount } = app
app.mount = (container): any => {
app.mount = (container: Element | string): any => {
if (isString(container)) {
container = document.querySelector(container)!
if (!container) {
@@ -53,9 +53,12 @@ export const createApp: CreateAppFunction<Element> = (...args) => {
) {
component.template = container.innerHTML
}
// clear content before mounting
container.innerHTML = ''
return mount(container)
const isHydrate = container.hasAttribute('data-server-rendered')
if (!isHydrate) {
// clear content before mounting
container.innerHTML = ''
}
return mount(container, isHydrate)
}
return app