好用的聊天页面显示最后一条记录

参考:参考

 

/**
         * @author gongliying
         * @date 2019-07-26
         * @information 跳转页面底部
         */
        scrollToBottom: function () {
            let that = this;
            let query = uni.createSelectorQuery();
            query.selectAll('.m-item').boundingClientRect();
            query.select('#scrollview').boundingClientRect();
            query.exec((res) => {
                that.style.mitemHeight = 0;
                res[0].forEach((rect) => that.style.mitemHeight = that.style.mitemHeight + rect.height + 40)   //获取所有内部子元素的高度
           // 因为vue的虚拟DOM 每次生成的新消息都是之前的,所以采用异步setTimeout    主要就是添加了这红字				           setTimeout(() => {
                  if (that.style.mitemHeight > (that.style.contentViewHeight - 100)) {   //判断子元素高度是否大于显示高度
                      that.scrollTop = that.style.mitemHeight - that.style.contentViewHeight    //用子元素的高度减去显示的高度就获益获得序言滚动的高度
                  }         }, 100)
       })
        }
    export default { 
created () {		   const res = uni.getSystemInfoSync();   //获取手机可使用窗口高度     api为获取系统信息同步接口		   this.style.pageHeight = res.windowHeight;		   this.style.contentViewHeight = res.windowHeight - uni.getSystemInfoSync().screenWidth / 750 * (100) - 70; //像素   因为给出的是像素高度 然后我们用的是upx  所以换算一下 		   this.scrollToBottom();   //创建后调用回到底部方法	 }, 


 data (){
     // 聊天页面时时滚动样式
return
        style: {
            pageHeight: 0,
            contentViewHeight: 0,
            footViewHeight: 90,
            mitemHeight: 0
        },  }}

但是不知道,如何在进入页面之后,马上滑动到最底部。原文一句话:“要是想要进入页面就滚到最底部呢  我们是在socket链接读取文件的时候调用了这个方法”,看不懂,不知道在哪里调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值