Vue预渲染闪烁

时间:2018-02-24 10:52:03

标签: vue.js vue-component vuex prerender

我现在有以下解决方案:

<template>
    <section id="prod-main">
        <prod-preview v-for="prod in products" :id="prod.id" :key="prod.id"/>
    </section>
</template>

export default {
...
    computed: {
        products: function () {
            return this.$store.getters['products/getPreview']
        }
    }
...
}

Vuex商店将在我的后端延迟一段时间后收到信息。所以在第一次打电话时它会是空的。现在我想使用vue spa prerender,在这里我看到一个闪烁 据我所知,它的作用如下:
1.浏览器使用产品加载HTML 2.执行用于替换产品的js,因为商店是空的 经过一段时间的延迟再次显示后端信息。

我该如何解决?我应该让prerender进行索引,我不能对后端回复进行硬编码。

1 个答案:

答案 0 :(得分:0)

我不知道我是否理解您的问题,但您是否尝试添加v-if以避免闪烁:

<template>
    <section id="prod-main">
        <prod-preview
            v-if="products.length > 0" 
            v-for="prod in products" 
            :id="prod.id" 
            :key="prod.id"/>
    </section>
</template>