繁体   English   中英

Ionic v2-如何知道前端何时完成渲染?

[英]Ionic v2 - How to know when front-end finish rendering?

如何知道前端何时渲染?

我的意思是,您的后端有一个数组,视图上有一个ngFor。

我怎么知道什么时候结束? 我想知道,因为我需要在完成时向下滚动,并且当前它在呈现之前会滚动。

这是一些用于演示该问题的代码: https : //gist.github.com/mtnoronha/e78eba6b610b71f1e72424ed21722be1

谢谢

创建一个新的promise,以在完成加载消息后进行处理,因此您需要滚动到底部,在这种情况下,请像下面这样使用它:

您的.TS文件

appendRows(newData){
if(!newData || newData.length == 0)
  return;
  this.myNewPromise().then(res =>{
    if(res){
      this.content.scrollToBottom(0);
    }
  })
}

myNewPromise = (): Promise<boolean> =>{
  return new Promise<boolean>(res){
    if(this.messages){
      let newArray = this.messages.concat(newData);
      this.messages = newArray;
      res(true);
    }else{
      this.messages = newData;
      res(false);
    }
  }
}

因此,只有在myNewPromise完成时才会触发您的scrollToBottom 在您的承诺中,您将解决该问题并返回一个布尔值,因此,如果有新消息,请调用scrollToBottom

如果您需要以任何一种方式调用它,只需在两个res传递true或在myNewPromise返回时删除if (res)

希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM