Prévu pour renvoyer une valeur à la fin de la flèche en fonction de

Tout fonctionne bien, mais j'ai cet avertissement Expected to return a value at the end of arrow function array-callback-return, j'essaie d'utiliser forEach au lieu map, mais alors <CommentItem /> ne s'affiche même pas. Comment résoudre ce problème?

JS:

  return this.props.comments.map((comment) => {
  
      if (comment.hasComments === true) {
      
        return (
          <div key={comment.id}>
          
            <CommentItem className="MainComment"/>

              {this.props.comments.map(commentReply => {
              
                if (commentReply.replyTo === comment.id) { 
                  return (
                    <CommentItem className="SubComment"/>
                 ) //returnt
                } //if-statement
              }) //map-function
              } //map-function __begin
            
          </div> // comment.id
          
        ) //return

  • Est-il un autre retour si vous n'entrez pas dans le si?
  • Vous retourner uniquement si commentReply.replyTo === comment.id. Si ce n'est pas le cas, vous n'avez rien retourner. Vient de mettre return null après la if bloc
  • Mikael Lennholm, pourrais-je dire, vous êtes des génies
  • certains langages ne permettent pas une seule branche if déclarations parce qu'elles conduisent à des problèmes de ce genre. Vous feriez-vous une faveur si vous avez toujours, toujours écrire le else branche de if de l'instruction if représente une fourchette dans votre code, vous devez indiquer au programme de ce qui se passe sur chaque chemin, pas seulement un.