上一篇有讲到如何创建webscoket接口,这里进行第二步处理,就是实现流的效果,我采取的方法就是当数据变化时讲滚动条固定在底部,实现方法如下`
//使滚动条固定在底部,写在methods:{}里,这个不用多说
scrollToBottom: function() {
this.$nextTick(() => {
//Vue 在更新 DOM 时是异步执行的,为了在数据变化之后等待 Vue 完成更新 DOM,可以在数据变化之后立即使用 Vue.nextTick(callback)。这样回调函数将在 DOM 更新完成后被调用。
var container = this.$el.querySelector('.content-left-data'); //这里的class是我盛放数据流设置了overflow:auto 也就是让其拥有滚动条的盒子,自己根据情况去选定元素
container.scrollTop = container.scrollHeight;
});
},
updated: function() {//监听数据变化的钩子函数
this.scrollToBottom(); //每次页面渲染完之后滚动条在最底部
},