ANAHEIM, Calif. (AP) Neither Jarrod Dyson nor Justin Upton could tell whether Upton's bases-loaded line drive to the deepest part of center field would have made it out of Angel Stadium.
Dyson made sure nobody will ever know with a leaping, lunging catch that might have saved a win for the Arizona Diamondbacks.
Paul Goldschmidt hit an early two-run homer and Zack Greinke pitched into the seventh inning of the Diamondbacks' 12th victory in 16 games in June, 7-4 over the struggling Los Angeles Angels on Monday night.
Dyson had an early RBI single, and he prevented at least a couple of runs in the seventh with his catch on a possible grand slam by Upton. The nimble outfielder made it look relatively easy, turning Upton's shot into a 390-foot sacrifice fly.
''It was real sweet to take four off the board like that,'' Dyson said. ''I don't know if it was going to go over, but if I didn't catch it, there was going to be more than one baserunner scoring.''
Greinke (6-5) gave up back-to-back homers by Upton and Albert Pujols in the fourth, but the Diamondbacks backed him with six early runs, responding well after blowing a two-run lead in the ninth inning of a home loss to the Mets on Sunday.
Greinke left after giving up Kole Calhoun's one-out single in the seventh with a 6-2 lead. Two more Angels reached base against Yoshihisa Hirano before Dyson dramatically tracked down Upton's full-count drive to the wall.
''I knew I hit it hard, and it was going to be at least off the wall,'' Upton said with a grimace. ''He was in good position, and he's fast, and he just got it. ... I did my job. I hit the ball on the barrel, and I thought I had a home run. That's baseball.''
Mike Trout nearly pulled his own leaping feat moments later, but Nick Ahmed's homer glanced off his glove on the way over the center-field fence in the eighth for Arizona's final run in its ninth win in 11 games.
''He's one of a kind,'' Arizona manager Torey Lovullo said of Dyson, who thinks he has taken away at least three potential homers by opponents this season. ''You just appreciate every play he makes, every little thing he does.''
Ketel Marte also homered and Jeff Mathis had a two-run double for the Diamondbacks.
Trout had two singles and two walks for the Angels, who have lost seven of eight to fall well out of playoff position in the AL.
Upton - the Diamondbacks' No. 1 pick in the 2005 draft - and Pujols connected to start the fourth for the Angels' first back-to-back homers since last August.
''I think we have the makings to go on a run,'' manager Mike Scioscia said. ''We're still a good club, and we'll just focus on (Tuesday's) game.''
Arizona led 2-0 after two batters in its first game at Angel Stadium since June 2015. Goldschmidt followed Jon Jay's leadoff single with his 15th homer, giving him 26 hits in his last 51 at-bats during another torrid stretch for the Diamondbacks' cornerstone.
Trout leads the majors with 62 walks and is batting .439 in June, but he didn't score a run. He also was caught stealing for the first time in 14 attempts this season by Mathis.
Jaime Barria (5-3) yielded six hits and six runs in four innings for the Angels. The 21-year-old Panamanian rookie lost his second straight start after winning five of his first seven in the majors. ''Obviously, I wasn't locating my fastball,'' he said.
Archie Bradley got four outs for his third save. He threw 19 consecutive fastballs before his first off-speed pitch, and Upton grounded it into a double play for the first two outs of the ninth.
Pujols' homer was the 626th of his career, pulling him closer to Ken Griffey Jr. (630) for sixth place on baseball's career list. Pujols scored the 1,751st run of his career, tying Jimmie Foxx for 21st place.
Diamondbacks: OFs Steven Souza Jr. (strained pectoral) and A.J. Pollock (broken thumb) are making progress in their recoveries, but aren't cleared for full baseball activity.
Angels: After batting .145 before his injury, Calhoun went 2 for 3 in his return from a nine-game absence with a strained right oblique muscle. Even with Calhoun back, the Angels have 13 players on their disabled list, including nine pitchers. ... Right-handed reliever Jim Johnson played catch. He is out with back stiffness. ... RHP Garrett Richards is playing catch, but still resting his left hamstring strain.
Diamondbacks: Matt Koch (5-3, 4.09 ERA) is 3-0 in four starts since May 22. He has never faced the Angels.
Angels: Relief pitcher Felix Pena (0-0, 10.13 ERA) is expected to make his first start of the season while Los Angeles patches a hole in its injury-plagued rotation. The offseason acquisition has been up and down from Triple-A Salt Lake, never earning a regular spot in the bullpen.
More AP baseball: www.apnews.com/tags/MLBbaseball
Copyright 2018 by AP. Any commercial use or distribution without the express written consent of AP is strictly prohibited.