rt-sim-training-client/src/mixin/WindowResizeHandler.js
sunzhenyu d7efef41e4 pull
2019-08-29 17:16:33 +08:00

36 lines
692 B
JavaScript

import * as throttleUtil from '@/utils/throttle';
export default {
data() {
return {
_clientWidth: 0,
_clientHeight: 0
};
},
beforeMount() {
// 调用节流函数限制执行频率
var fn = throttleUtil.createOrUpdate(
this,
'_resizeHandler',
300,
'debounce'
);
window.addEventListener('resize', fn);
},
mounted() {
this._resizeHandler();
},
methods: {
_resizeHandler() {
this._clientWidth = document.documentElement.clientWidth;
this._clientHeight = document.documentElement.clientHeight;
if (this.resizeHandler) {
this.resizeHandler();
}
}
},
beforeDestroy() {
window.removeEventListener('resize', this._resizeHandler);
}
};