Once Upon a Time ran for seven seasons on ABC and put its own spin on classic fairytales like Cinderella, Snow White, and Beauty and the Beast, but at the center of it all was an original character — Emma Swan, played by Jennifer Morrison. Sadly, Morrison was not a series regular for all seven seasons of the television show, seeing as her character exited the series following the season 6 finale. However, she was not the only actor to do so. Ginnifer Goodwin (Snow White/Mary Margaret Blanchard), Josh Dallas (Prince Charming/David Nolan), and Emilie de Ravin (Belle French) also left the show before its last season.
https://screenrant.com/why-jennifer-morrison-left-once-upon-a-time/