Colton Sissons also scored, Matt Duchene had two assists and Juuse Saros made 34 saves for the Predators, who had to postpone their previous two games because a broken water main flooded Bridgestone Arena.
Nashville had not played since a 3–0 loss at the Detroit Red Wings on Wednesday.
Troy Terry scored, and John Gibson made 39 saves for the Ducks, who have lost six of their past seven.
At 7:15 of the second period, the Ducks had a two-on-zero break with two of their best offensive players, Terry and Trevor Zegras, but Saros turned away Zegras to keep the game scoreless.
Sissons scored at 10:04 of the second to give the Predators a 1–0 lead. All five skaters touched the puck for Nashville in the seven seconds leading up to the goal.
Ryan McDonagh retrieved a dump-in in the Predators’ zone and slid the puck to defense partner Roman Josi, who passed the puck through the neutral zone to left wing Tanner Jeannot.
He quickly passed the puck ahead to Matt Duchene, who drove down the left side before centering pass to Sissons, who held off Ducks right wing Jakob Silfverberg enough to get off a shot that slid between Gibson’s pads and across the goal line.
Saros came up short of his first shutout of the season and 19th of his NHL career when he was unable to glove a wrist shot from Terry and the puck bounced across the goal line to tie the score 1–1 at 10:39 of the third period.
On the game-winner, Zegras turned the puck over in the Anaheim zone and Duchene fed Josi for a one-timer from the left circle.