There is - in app settings -> message view.
However, if you sort your message list "unread first" (or "unread + starred first" IIRC) - the "mark as read" is postponed until you go back to a message list or swipe out of a message.
This is intentional, so that the currently visible message retains its position in the message list to enable swiping through all your current unread messages.