【发布时间】:2017-03-03 19:10:08
【问题描述】:
我有一个简单的 index.html 文件,其中包含以下 vue 挂载点:
<div id="server-rendered-test" server-rendered="true">server</div>
如你所见,我假装服务器已经渲染了模板。在我的 main.js 中,我有以下代码来挂载 vue:
const serverRenderedTest = new Vue({
el: '#server-rendered-test',
data: {
text: 'client'
},
template: '<div id="server-rendered-test">{{ text }}</div>'
});
我希望 vue 能够“水合”现有的 DOM,但它没有,因为最终结果(在 vue 启动之后)是:
<div id="server-rendered-test">client</div>
我错过了什么?
【问题讨论】:
-
您能否更清楚地解释您遇到的问题和问题?
-
您是否尝试过在 Vue 组件中省略数据对象?
-
我也面临这个问题。我希望客户端机制按原样使用生成的 html,并且仅在进一步的应用程序生命周期中对其进行修改。在下面的 Nuxt.js 演示 (hello-world.nuxtjs.org) 中,行为似乎是正确的。
标签: javascript vue.js vuejs2 server-side-rendering