今天在寫這個需求的時候 直接就用了
element.scrollTop = element.scrollHeight
發現最后總數會差一點像素到最底部
每次滾動條沒有滑動到最底部,而是底部還有一條信息被隱藏
問題分析:
由於vue采用虛擬dom,我每次生成新的消息時獲取到的div的scrollHeight的值是生成新消息之前的值,所以造成每次都是最新的那條消息被隱藏掉了!為了論證我的分析是正確的特意做個試驗,把每次vue在重新渲染dom的前后時間點和DIV的scrollHeight打印出來以做對比:

確實有偏差
使用 this.$nextTick()就好了