Vue Nuxt中可与服务器端渲染一起使用的元素的UniqueId?

时间:2019-07-12 05:58:27

标签: vue.js nuxt.js

我正在使用打字稿tsx并渲染了

return (       
  <div id={this.uniqId} class={{ 'wrapper': true, 'w-dyn-item': true, 'with-video-background': this.video }}>
  ...
  )

uniqId来自插件

Vue.use({
    install: function (Vue, options) {


            console.log("TEST INstall")
        if (!("uniqId" in Vue.prototype)) {

            Object.defineProperty(Vue.prototype, "uniqId", {
                get: function uniqId() {
                    return this._uid;
                },
                configurable:true
            });
        }
    }
});

这在普通的vue应用中有效。但是使用nuxt时,由于服务器端渲染而存在一些问题。

在客户端上打印console.log((this.uniqId));时,id被指定为“ 27”,但是在检查html元素时,其元素上的ID标签却不同(正确地来自服务器端渲染)。

但是既然它实际上调用了render函数,为什么不更新id标签呢?我如何获得与nuxt一起使用的组件中元素的唯一ID?

0 个答案:

没有答案