async componentDidMount()

in amplify-video-frontend/src/components/VideoChat.js [61:79]


  async componentDidMount() {
    const data = await Auth.currentAuthenticatedUser();
    this.setState({ username: data.username });
    
    const result = await API.graphql(graphqlOperation(listMessagesByChannel, { channelId: this.state.channelId, sortDirection:'ASC' } ));
    this.setState({ messages: result.data.listMessagesByChannel.items });
    
    this.createMessageListener = API.graphql(graphqlOperation(onCreateMessage, { channelId: this.state.channelId })).subscribe({
      next:  messageData => {
        const newMessage = messageData.value.data.onCreateMessage;
        if (newMessage.username!==this.state.username){
          this.setState({ messages: [...this.state.messages, newMessage ] })
          this.scrollToBottom();
        }
      }
    });
    
    this.scrollToBottom();
  }