Detroit responded after losing goalie John Gibson, who missed the last two periods because of an upper-body injury. He allowed one goal on 11 shots, and Cam Talbot made 18 saves in relief.
Alex DeBrincat and Lucas Raymond each had a goal and an assist for the Red Wings (35-20-6), and Mason Appleton and Marco Kasper each had two assists.
Filip Forsberg and Jonathan Marchessault scored for the Predators (27-25-8), and Juuse Saros made 27 saves.
Emmitt Finnie gave Detroit a 1-0 lead at 4:51 of the first period on a rebound of a shot from Appleton that was deflected by Kasper.
Forsberg tied it 1-1 on a power play at 17:02 with a one-timer of Luke Evangelista’s feed from the top of the right face-off circle.
Marchessault gave Nashville a 2-1 lead at 7:10 of the second period. He forced a turnover from Red Wings defenseman Simon Edvinsson in the offensive zone and finished a chance in the crease after a pass from Ryan O’Reilly.
Raymond tied it 2-2 at 9:45 on a wrist shot after a cross-ice feed from DeBrincat on the rush.
Johansson put Detroit in front 3-2 at 16:36 on a short-handed 2-on-1 rush with Kasper after Moritz Seider was penalized for slashing.
It was Johansson’s second goal of the season, and first since Jan. 12.
DeBrincat scored an empty-net goal at 19:33 of the third period for the 4-2 final.
Talbot stopped all 13 shots he faced in the third.