"Error: At least one element required."报错解决
最近前端使用了element-resize-detector来监控组件尺寸变化,我的用法如下:
getContainerkWidth () {
const erd = elementResizeDetectorMaker()
this.$nextTick(() => {
erd.listenTo(this.$refs.container, (element) => {
this.containerWidth = element.offsetWidth
})
})
},
但是,浏览器的控制台出现了这个错误:
[Vue warn]: Error in nextTick: "Error: At least one element required."
经过检查是因为组件挂载时在window上添加了监听事件,但是没有移除。
mounted () {
this.getContainerkWidth()
window.addEventListener('resize', this.getContainerkWidth)
},
加上以下这段代码,在组件销毁之前移除监听事件,就可以解决了。
beforeDestroy () {
window.removeEventListener('resize', this.getContainerkWidth)
},