The Padres scored two runs in the second on a sacrifice fly by Brandon Dixon and a two-out, run-scoring double by Trent Grisham before Tatis drove Drew Smyly's first pitch of the third over the center field wall for his 10th homer of the season.
Tatis followed singles by Ha-Seong Kim and Grisham with a two-out, three-run homer off Cubs reliever Jeremiah Estrada in the eighth. It was the 10th multi-home run game of Tatis' career. Darvish issued one walk with nine strikeouts. He threw 115 pitches (75 strikes) while evening his record at 4-4.
Smyly (5-3) gave up three runs on seven hits and three walks with four strikeouts in 5 2/3 innings to take the loss. The bottom four hitters in the Cubs' lineup were a combined 0-for-12 with nine strikeouts.
Visiting Atlanta scored in four consecutive innings to snap Arizona's six-game winning streak with a victory in Phoenix.
Braves right-hander Spencer Strider, who leads the majors in strikeouts, added another seven to his total, while Ronald Acuna Jr. paced Atlanta's offense by going 2-for-5 with a homer and a double. Eddie Rosario and Marcel Ozuna each had two hits and an RBI.
Strider (6-2), who now has 113 strikeouts in 12 starts, worked six-plus innings, allowing three hits, two runs and four walks. Diamondbacks starter Ryne Nelson (2-3) took the loss, allowing three runs on six hits in 4 2/3 innings. Evan Longoria hit a solo shot for Arizona.
Jake Bauers hit a pair of two-run home runs and Aaron Judge added a solo shot to go along with a key defensive play in the eighth inning as New York beat host Los Angeles.
Oswaldo Cabrera also hit a home run for the Yankees, while Gerritt Cole (7-0) gave up one run on four hits over six innings to stay unbeaten and knot the three-game series. Cole left after 80 pitches because of cramping.
Bauers hit both of his home runs against Dodgers rookie starter Michael Grove, going deep in the second and fourth innings to give him five on the season. Judge made a running catch in the eighth inning on a drive by J.D. Martinez with a runner on base, breaking through the bullpen gate in right field in the process.
Justin Turner's bases-clearing double highlighted a six-run sixth inning to help Boston move past visiting Tampa Bay in the front end of a day-night doubleheader.
Alex Verdugo went 3-for-5 and drove in two runs while Turner, Masataka Yoshida and Pablo Reyes all had two hits apiece for Boston. Corey Kluber (3-6) pitched a scoreless sixth inning to earn the win in relief.
Tampa Bay's Yandy Diaz and Wander Franco (3-for-5) each hit two doubles while going a combined 5-for-10. Diaz (2-for-5) and Harold Ramirez (2-for-3) had two RBI apiece.
Harold Ramirez hit a two-run double in the top of the ninth inning to finish a 3-for-5 performance and lift Tampa Bay past host Boston in the nightcap of a doubleheader.
Francisco Mejia added two hits and a run to help the Rays split the twin bill and the first half of the four-game series.
With Red Sox closer Kenley Jansen (1-3) on for the second straight game, Mejia and Yandy Diaz opened the ninth with back-to-back singles before advancing into scoring position on Brandon Lowe's deep flyout into the right-field corner. Ramirez's line-drive double to right plated both runners, giving Tampa a lead it wouldn't relinquish.
Marcus Semien homered and had four hits and three RBIs and Texas racked up 19 hits while producing a 16-6 victory over Seattle in Arlington, Texas.
Corey Seager had three hits, three runs and three RBIs and Nathaniel Lowe had three hits and three RBIs for the Rangers. Lowe, Mitch Garver and Leody Taveras also homered for Texas. Semien extended his MLB-high hitting streak to 22 games for the Rangers. Texas starter Andrew Heaney allowed three earned runs in three innings, and exited after facing four batters in the fourth.
In his major league debut, Seattle's Bryson Woo (0-1) struggled, and was replaced after giving up six runs on seven hits in two innings.
Vladimir Guerrero Jr. ripped a go-ahead RBI double with two outs in the ninth to lift visiting Toronto to a victory over New York.
David Robertson (2-1) allowed George Springer's one-out single in the top of the ninth. Springer stole second and scored when Guerrero grounded a double past third base. Toronto right-hander Jose Berrios allowed one run, four hits and three walks in six innings. He struck out six.
Mets right-hander Tylor Megill gave up one run, five hits and five walks while striking out five in 5 1/3 innings.
Connor Joe hit a two-run double and Carlos Santana had an RBI single during a three-run sixth that helped lift Pittsburgh to a victory over visiting St. Louis.
Ke'Bryan Hayes added a home run for the Pirates, who have taken the first two games of the three-game set. Pittsburgh starter Luis L. Ortiz gave up one run in two innings before his outing was cut short by a rain delay. Dauri Moreta (3-1), the fifth of eight Pittsburgh pitchers, went 1 2/3 scoreless innings to earn the win.
Nolan Gorman and Willson Contreras each homered for the Cardinals, who have lost four of their past five games. St. Louis starter Jordan Montgomery (2-7) allowed four runs (one earned) and four hits in 5 2/3 innings, with five strikeouts and one walk.
Yoan Moncada scored on a wild pitch with two out and the bases loaded in the 10th inning as host Chicago pulled out a win over Detroit.
All three of the game's runs came home on wild pitches. Andrew Benintendi had two hits and scored a run for the White Sox. Reynaldo Lopez (1-4) pitched a scoreless 10th to collect the victory.
Zach McKinstry tripled and scored the lone run for the Tigers, who were blanked 3-0 in the series opener on Friday.
J.T. Realmuto hit a tie-breaking home run in the sixth inning and Philadelphia snapped a five-game losing streak by beating host Washington.
Realmuto also doubled and scored two runs, while the Phillies used seven pitchers to even the three-game series. Matt Strahm worked two scoreless innings in a starting role on a bullpen day for the Phillies. Dylan Covey (1-1) was the winning pitcher despite giving up the two Washington runs.
The Nationals managed seven hits - all singles - and drew just two walks. Washington left-hander MacKenzie Gore (3-4) was charged with three runs on nine hits across six innings.
Alex Bregman belted his fifth career grand slam while Cristian Javier delivered a strong pitching performance as Houston defeated visiting Los Angeles.
Javier (7-1) limited the Angels to one run on six hits with no walks and five strikeouts over six innings. Bregman added a career-high-tying four walks to his eighth homer. Shohei Ohtani finished 4-for-5 and a homer shy of the cycle for Los Angeles.
After applying pressure on the Houston bullpen with two runs in the eighth inning and another scoring threat in the ninth on Friday, the Angels did so again with a four-run seventh. However, Los Angeles could not complete the comeback.
Blake Perkins hit a grand slam for his first major league home run as Milwaukee slugged its way past host Cincinnati.
The Brewers' offense came alive early, scoring nine runs in the first three innings, including five in the third. Perkins, batting in the No. 9 spot, finished 2-for-4 with five RBIs.
Milwaukee did all of its damage off of Reds starter Graham Ashcraft (3-4), who have up 10 runs on nine hits in four innings with four walks and two strikeouts.
Will Brennan blasted a go-ahead two-run homer in the seventh inning and drove in three runs overall to help visiting Cleveland beat Minnesota.
Guardians rookie left-hander Logan Allen (3-2) allowed two runs and seven hits in six innings to win his second straight start. He struck out four and walked two. Emmanuel Clase pitched the ninth for his MLB-leading 18th save.
Brennan's home run came against Twins right-hander Sonny Gray, who came in with the second-lowest ERA in the MLB (1.94) and had not allowed a home run in his first 11 starts this season. Gray (4-1) surrendered three runs and a season-high 10 hits in 6 2/3 innings. Jorge Polanco homered for Minnesota, which had won three straight overall.
Alex Cobb continued his career-long mastery of his former employer, Wilmer Flores collected a double, two singles and two RBIs, and San Francisco squared its three-game series against visiting Baltimore.
The Giants used a three-run third inning to grab a lead they never relinquished en route to just the second win in their last six games. San Francisco got five consecutive hits off Baltimore starter Kyle Bradish (2-2) in the uprising, with a J.D. Davis single opening the scoring and a Flores two-run single making it 3-0.
That was more than enough support for Cobb (5-2), who took a three-hit shutout into the eighth with a four-run lead before serving up a one-out single to Aaron Hicks and a double by Ryan O'Hearn. Bradish hung around for just three of the Giants' four runs, pulled after allowing seven hits in four innings.
Luis Arraez went 5-for-5 with five RBIs to lead host Miami to a win over Oakland.
Arraez, who leads the majors with a .390 batting average, had an RBI single in the second, a three-run double in the third and an RBI double in the fifth as Miami won for the sixth time in eight games. His other two hits were a double and a single. Joey Wendle also had a strong showing for the Marlins, going 3-for-4 with three runs and two doubles.
Rookie right-hander Eury Perez (3-1) continued to impress, striking out five in five scoreless innings while lowering his ERA to 2.25. He allowed four hits and one walk. Oakland rookie right-hander Luis Medina (0-5) is still looking for his first major league win after allowing six runs on six hits and four walks in two innings. He fanned two.
Elehuris Montero had a two-run triple to highlight a five-run first inning, lifting visiting Colorado to a victory over Kansas City.
Ryan McMahon, Randal Grichuk and Charlie Blackmon each had an RBI single and scored a run for the Rockies, who have won two in a row following a four-game skid. The offense was more than enough for Matt Carasiti (1-0), who picked up his second win in the major leagues and first since Aug. 19, 2016.
Nick Pratto homered to lead off the first inning and Maikel Garcia, Drew Waters and Salvador Perez each had an RBI single for the Royals, who have lost 10 of their last 13 games.