计算机属性“有时”不刷新-强制重新加载?-Vue JS

时间:2018-08-06 21:41:53

标签: javascript vue.js

我正在使用Vue.js构建砌体网格。除某些特殊情况外,它的运行情况非常好。屏幕调整大小后,需要重新计算宽度/高度/填充等。

但是,偶尔情况会变得怪异地不同步,这会破坏设计。

请参阅下面的屏幕截图,其中显示了不同步的数据。我特别强调了右填充的评估,但是宽度也会发生这种情况。

只有在调整页面大小并重新计算后,页面加载才不会发生这种情况。

有没有一种方法可以强制Vue JS组件刷新其计算属性?看来这就是问题所在,但不确定。

这是计算出的属性代码。

imageStyleObject: function () {
    return {
        width: this.image.width + 'px',
        height: this.height + 'px',
        paddingRight: this.image.padding_right + 'px',
    }
},
<div class="masonry-image-container" :style="imageStyleObject">
    <a @click.stop="imageSelected">
        <img :src="imagePath" :alt="image.description" :style="styleObject">
    </a>
</div>

更新方式

<masonry-image v-for="image in row.images" :key="image.id" :image="image" :height="row.height"></masonry-image>

enter image description here

0 个答案:

没有答案