【发布时间】:2018-07-11 01:01:32
【问题描述】:
我搜索了很多这个问题,但没有找到直接的答案。
我有一个计算属性,它也取决于窗口高度,所以每次调整窗口大小时我都需要重新计算它。尝试使用$forceUpdate(),但我认为它不适用于组件。这是我的组件:
Vue.component('trades-component', {
mixins: [tradingMixin],
created: function() {
var that = this;
// recompute visible trades if window resized
$( window ).on( "resize", function() {
that.$forceUpdate();
});
$( window ).resize();
},
computed: {
visibleTradesCount: function() {
var colOffset = $(".left-col").offset();
var colHeight = $(".left-col").height();
var tableOffset = $(".left-col #trade-history table").offset();
var tableHeight = colHeight - (tableOffset.top - colOffset.top) - this.rowHeight;
return Math.floor(tableHeight / this.rowHeight)
}
}
})
我知道可能的解决方法,但想知道是否有办法强制重新计算组件中的特定属性或所有计算属性。
【问题讨论】:
标签: javascript vue.js vuejs2 vue-component